From 5f183e76ea0d7c2385236129a614b178994a5fc8 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Mon, 2 Feb 2026 09:06:20 +0900 Subject: [PATCH 01/26] [Intel] Start parser automation --- src/FrontEnd/Intel/B2R2.FrontEnd.Intel.fsproj | 2 + src/FrontEnd/Intel/Intel.fs | 32910 ++++++++++++++++ src/FrontEnd/Intel/IntelTypes.fs | 126 + src/FrontEnd/Intel/Parser.fs | 705 +- src/FrontEnd/Intel/ParsingFunctions.fs | 768 +- src/FrontEnd/Intel/ParsingHelper.fs | 11 +- src/FrontEnd/Intel/ParsingJob.fs | 2058 - 7 files changed, 33290 insertions(+), 3290 deletions(-) create mode 100644 src/FrontEnd/Intel/Intel.fs create mode 100644 src/FrontEnd/Intel/IntelTypes.fs diff --git a/src/FrontEnd/Intel/B2R2.FrontEnd.Intel.fsproj b/src/FrontEnd/Intel/B2R2.FrontEnd.Intel.fsproj index 0f4ecbdbc..479cca347 100644 --- a/src/FrontEnd/Intel/B2R2.FrontEnd.Intel.fsproj +++ b/src/FrontEnd/Intel/B2R2.FrontEnd.Intel.fsproj @@ -16,6 +16,8 @@ + + diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs new file mode 100644 index 000000000..746a380a6 --- /dev/null +++ b/src/FrontEnd/Intel/Intel.fs @@ -0,0 +1,32910 @@ +module B2R2.FrontEnd.Intel.InstructionArrays + +let (norOne: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 1(0x01) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 2(0x02) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 3(0x03) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 4(0x04) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 5(0x05) + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 6(0x06) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ES" |] + OpEn = OpEn.ZO } + |] + [| // index 7(0x07) + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ES" |] + OpEn = OpEn.ZO } + |] + [| // index 8(0x08) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 9(0x09) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 10(0x0A) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 11(0x0B) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 12(0x0C) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 13(0x0D) + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 14(0x0E) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "CS" |] + OpEn = OpEn.ZO } + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 17(0x11) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 18(0x12) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 19(0x13) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 20(0x14) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 21(0x15) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 22(0x16) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "SS" |] + OpEn = OpEn.ZO } + |] + [| // index 23(0x17) + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "SS" |] + OpEn = OpEn.ZO } + |] + [| // index 24(0x18) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 25(0x19) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 26(0x1A) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 27(0x1B) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 28(0x1C) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 29(0x1D) + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 30(0x1E) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DS" |] + OpEn = OpEn.ZO } + |] + [| // index 31(0x1F) + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DS" |] + OpEn = OpEn.ZO } + |] + [| // index 32(0x20) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 33(0x21) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 34(0x22) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 35(0x23) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 36(0x24) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 37(0x25) + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + { Opcode = Opcode.DAA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 40(0x28) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 41(0x29) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 42(0x2A) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 43(0x2B) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 44(0x2C) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 45(0x2D) + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + { Opcode = Opcode.DAS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 48(0x30) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 49(0x31) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 50(0x32) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; Unknown "1R/M8" |] + OpEn = OpEn.RM } + |] + [| // index 51(0x33) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 52(0x34) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 53(0x35) + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + { Opcode = Opcode.AAA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 56(0x38) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 57(0x39) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 58(0x3A) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 59(0x3B) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 60(0x3C) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 61(0x3D) + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + { Opcode = Opcode.AAS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 64(0x40) + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O } + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O } + |] + [| // index 65(0x41) + |] + [| // index 66(0x42) + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O } + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O } + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O } + |] + [| // index 81(0x51) + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + |] + [| // index 85(0x55) + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O } + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O } + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O } + |] + [| // index 89(0x59) + |] + [| // index 90(0x5A) + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + { Opcode = Opcode.PUSHA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.PUSHAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 97(0x61) + { Opcode = Opcode.POPA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POPAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 98(0x62) + { Opcode = Opcode.BOUND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16&16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.BOUND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M32&32" |] + OpEn = OpEn.RM } + |] + [| // index 99(0x63) + { Opcode = Opcode.ARPL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOVSXD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSXD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSXD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz32 |] + OpEn = OpEn.RM } + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 105(0x69) + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16; Imm Sz16 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32; Imm Sz32 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64; Imm Sz32 |] + OpEn = OpEn.RMI } + |] + [| // index 106(0x6A) + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 107(0x6B) + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16; Imm Sz8 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 108(0x6C) + { Opcode = Opcode.INS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8; Unknown "DX" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.INSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 109(0x6D) + { Opcode = Opcode.INS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16; Unknown "DX" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.INS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Unknown "DX" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.INSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.INSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 110(0x6E) + { Opcode = Opcode.OUTS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.OUTSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 111(0x6F) + { Opcode = Opcode.OUTS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.OUTS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.OUTSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.OUTSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 112(0x70) + { Opcode = Opcode.JO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 113(0x71) + { Opcode = Opcode.JNO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 114(0x72) + { Opcode = Opcode.JB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 115(0x73) + { Opcode = Opcode.JAE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 116(0x74) + { Opcode = Opcode.JZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 117(0x75) + { Opcode = Opcode.JNZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 118(0x76) + { Opcode = Opcode.JBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 119(0x77) + { Opcode = Opcode.JNBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 120(0x78) + { Opcode = Opcode.JS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 121(0x79) + { Opcode = Opcode.JNS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 122(0x7A) + { Opcode = Opcode.JP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 123(0x7B) + { Opcode = Opcode.JNP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 124(0x7C) + { Opcode = Opcode.JL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 125(0x7D) + { Opcode = Opcode.JGE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JGE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 126(0x7E) + { Opcode = Opcode.JNG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 127(0x7F) + { Opcode = Opcode.JNLE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNLE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 128(0x80) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "R/M81"; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 129(0x81) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.AND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.CMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.OR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 132(0x84) + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 133(0x85) + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 134(0x86) + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 135(0x87) + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 136(0x88) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 137(0x89) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 138(0x8A) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz8; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 139(0x8B) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 140(0x8C) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Unknown "SREG" |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "R16/R32/M16"; Unknown "SREG" |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RMdiff(Sz64, Sz16); Unknown "SREG" |] + OpEn = OpEn.MR } + |] + [| // index 141(0x8D) + { Opcode = Opcode.LEA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LEA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LEA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "M" |] + OpEn = OpEn.RM } + |] + [| // index 142(0x8E) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "SREG"; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "SREG"; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 143(0x8F) + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + |] + [| // index 144(0x90) + { Opcode = Opcode.NOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.PAUSE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Reg Sz16 |] + OpEn = OpEn.O } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Unknown "AX" |] + OpEn = OpEn.O } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Reg Sz32 |] + OpEn = OpEn.O } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Reg Sz64 |] + OpEn = OpEn.O } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Unknown "EAX" |] + OpEn = OpEn.O } + { Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Unknown "RAX" |] + OpEn = OpEn.O } + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + { Opcode = Opcode.CBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CWDE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CDQE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 153(0x99) + { Opcode = Opcode.CWD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CDQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CQO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 154(0x9A) + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "PTR16:16" |] + OpEn = OpEn.D } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "PTR16:32" |] + OpEn = OpEn.D } + |] + [| // index 155(0x9B) + { Opcode = Opcode.FCLEX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FINIT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FSAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M94/108BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTCW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M2BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTENV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M14/28BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M2BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX" |] + OpEn = OpEn.None } + { Opcode = Opcode.WAIT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.FWAIT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 156(0x9C) + { Opcode = Opcode.PUSHF + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.PUSHFD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.PUSHFQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 157(0x9D) + { Opcode = Opcode.POPF + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POPFD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POPFQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 158(0x9E) + { Opcode = Opcode.SAHF + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 159(0x9F) + { Opcode = Opcode.LAHF + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 160(0xA0) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Unknown "MOFFS8" |] + OpEn = OpEn.FD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Unknown "MOFFS8" |] + OpEn = OpEn.FD } + |] + [| // index 161(0xA1) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Unknown "MOFFS16" |] + OpEn = OpEn.FD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Unknown "MOFFS32" |] + OpEn = OpEn.FD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Unknown "MOFFS64" |] + OpEn = OpEn.FD } + |] + [| // index 162(0xA2) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "MOFFS8"; Unknown "AL" |] + OpEn = OpEn.TD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "MOFFS8"; Unknown "AL" |] + OpEn = OpEn.TD } + |] + [| // index 163(0xA3) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "MOFFS16"; Unknown "AX" |] + OpEn = OpEn.TD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "MOFFS32"; Unknown "EAX" |] + OpEn = OpEn.TD } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "MOFFS64"; Unknown "RAX" |] + OpEn = OpEn.TD } + |] + [| // index 164(0xA4) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8; Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MOVSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 165(0xA5) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16; Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Mem Sz64 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MOVSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MOVSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MOVSQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 166(0xA6) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8; Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CMPSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 167(0xA7) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16; Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Mem Sz64 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CMPSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CMPSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.CMPSQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 168(0xA8) + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 169(0xA9) + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz16 |] + OpEn = OpEn.I } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz32 |] + OpEn = OpEn.I } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "RAX"; Imm Sz32 |] + OpEn = OpEn.I } + |] + [| // index 170(0xAA) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.STOSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 171(0xAB) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.STOSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.STOSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.STOSQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 172(0xAC) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LODSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 173(0xAD) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LODSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LODSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LODSQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 174(0xAE) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SCASB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 175(0xAF) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz16 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SCASW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SCASD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SCASQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 176(0xB0) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI } + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Unknown "IMM64" |] + OpEn = OpEn.OI } + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 193(0xC1) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 194(0xC2) + { Opcode = Opcode.RET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16 |] + OpEn = OpEn.I } + |] + [| // index 195(0xC3) + { Opcode = Opcode.RET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 196(0xC4) + { Opcode = Opcode.LES + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16:16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LES + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M16:32" |] + OpEn = OpEn.RM } + |] + [| // index 197(0xC5) + { Opcode = Opcode.LDS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16:16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LDS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M16:32" |] + OpEn = OpEn.RM } + |] + [| // index 198(0xC6) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XABORT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 199(0xC7) + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.XBEGIN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.A } + { Opcode = Opcode.XBEGIN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.A } + |] + [| // index 200(0xC8) + { Opcode = Opcode.ENTER + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16; Unknown "0" |] + OpEn = OpEn.II } + { Opcode = Opcode.ENTER + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16; Unknown "1" |] + OpEn = OpEn.II } + { Opcode = Opcode.ENTER + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16; Imm Sz8 |] + OpEn = OpEn.II } + |] + [| // index 201(0xC9) + { Opcode = Opcode.LEAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LEAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.LEAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 202(0xCA) + { Opcode = Opcode.RET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16 |] + OpEn = OpEn.I } + |] + [| // index 203(0xCB) + { Opcode = Opcode.RET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 204(0xCC) + { Opcode = Opcode.INT3 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 205(0xCD) + { Opcode = Opcode.INT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 206(0xCE) + { Opcode = Opcode.INTO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 207(0xCF) + { Opcode = Opcode.IRET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.IRETD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.IRETQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 208(0xD0) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz8; Unknown "1" |] + OpEn = OpEn.M1 } + |] + [| // index 209(0xD1) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Unknown "1" |] + OpEn = OpEn.M1 } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Unknown "1" |] + OpEn = OpEn.M1 } + |] + [| // index 210(0xD2) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz8; Unknown "CL" |] + OpEn = OpEn.MC } + |] + [| // index 211(0xD3) + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.RCR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.ROR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Unknown "CL" |] + OpEn = OpEn.MC } + { Opcode = Opcode.SHR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Unknown "CL" |] + OpEn = OpEn.MC } + |] + [| // index 212(0xD4) + { Opcode = Opcode.AAM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.AAM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8 |] + OpEn = OpEn.ZO } + |] + [| // index 213(0xD5) + { Opcode = Opcode.AAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.AAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8 |] + OpEn = OpEn.ZO } + |] + [| // index 214(0xD6) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 215(0xD7) + { Opcode = Opcode.XLAT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz8 |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XLATB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XLATB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 216(0xD8) + { Opcode = Opcode.FADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + |] + [| // index 217(0xD9) + { Opcode = Opcode.F2XM1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FABS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FCHS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FDECSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FINCSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FLD1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDL2T + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDL2E + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDPI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDLG2 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDLN2 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDCW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M2BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FLDENV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M14/28BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FPREM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FPREM1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FRNDINT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FSCALE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FSIN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FSINCOS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FSQRT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M32FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNSTCW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M2BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNSTENV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M14/28BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FTST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FXAM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FXCH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FXCH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FXTRACT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FYL2X + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FYL2XP1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 218(0xDA) + { Opcode = Opcode.FIADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVU + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FIDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FIDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FICOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FICOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FIMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOMPP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 219(0xDB) + { Opcode = Opcode.FNCLEX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVNB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVNE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVNBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCMOVNU + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOMI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FILD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNINIT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FIST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M32INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M80FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M80FP" |] + OpEn = OpEn.None } + |] + [| // index 220(0xDC) + { Opcode = Opcode.FADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + |] + [| // index 221(0xDD) + { Opcode = Opcode.FFREE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M64INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FRSTOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M94/108BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNSAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M94/108BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M64FP" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNSTSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M2BYTE" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 222(0xDE) + { Opcode = Opcode.FADDP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FADDP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FIADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMPP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FIDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVRP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FDIVRP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FIDIVR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FICOM + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FICOMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMULP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FMULP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FIMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FISUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBRP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FSUBRP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.FISUBR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + |] + [| // index 223(0xDF) + { Opcode = Opcode.FBLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "M80BCD" |] + OpEn = OpEn.None } + { Opcode = Opcode.FBSTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "M80BCD" |] + OpEn = OpEn.None } + { Opcode = Opcode.FCOMIP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FUCOMIP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "ST"; Unknown "ST(I)" |] + OpEn = OpEn.None } + { Opcode = Opcode.FILD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FILD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M64INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FIST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M64INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FISTTP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M16INT" |] + OpEn = OpEn.None } + { Opcode = Opcode.FNSTSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX" |] + OpEn = OpEn.None } + |] + [| // index 224(0xE0) + { Opcode = Opcode.LOOPNE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 225(0xE1) + { Opcode = Opcode.LOOPE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 226(0xE2) + { Opcode = Opcode.LOOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 227(0xE3) + { Opcode = Opcode.JCXZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JECXZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.JRCXZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 228(0xE4) + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 229(0xE5) + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Imm Sz8 |] + OpEn = OpEn.I } + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Imm Sz8 |] + OpEn = OpEn.I } + |] + [| // index 230(0xE6) + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8; Unknown "AL" |] + OpEn = OpEn.I } + |] + [| // index 231(0xE7) + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8; Unknown "AX" |] + OpEn = OpEn.I } + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8; Unknown "EAX" |] + OpEn = OpEn.I } + |] + [| // index 232(0xE8) + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 233(0xE9) + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 234(0xEA) + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "PTR16:16" |] + OpEn = OpEn.S } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "PTR16:32" |] + OpEn = OpEn.S } + |] + [| // index 235(0xEB) + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz8 |] + OpEn = OpEn.D } + |] + [| // index 236(0xEC) + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AL"; Unknown "DX" |] + OpEn = OpEn.ZO } + |] + [| // index 237(0xED) + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "AX"; Unknown "DX" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.IN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "EAX"; Unknown "DX" |] + OpEn = OpEn.ZO } + |] + [| // index 238(0xEE) + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Unknown "AL" |] + OpEn = OpEn.ZO } + |] + [| // index 239(0xEF) + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Unknown "AX" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.OUT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "DX"; Unknown "EAX" |] + OpEn = OpEn.ZO } + |] + [| // index 240(0xF0) + { Opcode = Opcode.LOCK + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 241(0xF1) + { Opcode = Opcode.INT1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 242(0xF2) + { Opcode = Opcode.FPTAN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.XACQUIRE + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 243(0xF3) + { Opcode = Opcode.FPATAN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.XRELEASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 244(0xF4) + { Opcode = Opcode.HLT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 245(0xF5) + { Opcode = Opcode.CMC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 246(0xF6) + { Opcode = Opcode.DIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.IDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.MUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.NEG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.NOT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 247(0xF7) + { Opcode = Opcode.DIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.DIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.DIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.IDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.IDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.IDIV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.MUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.MUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.MUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.NEG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.NEG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.NEG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.NOT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.NOT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.NOT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16; Imm Sz16 |] + OpEn = OpEn.MI } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32; Imm Sz32 |] + OpEn = OpEn.MI } + { Opcode = Opcode.TEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64; Imm Sz32 |] + OpEn = OpEn.MI } + |] + [| // index 248(0xF8) + { Opcode = Opcode.CLC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 249(0xF9) + { Opcode = Opcode.STC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 250(0xFA) + { Opcode = Opcode.CLI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 251(0xFB) + { Opcode = Opcode.STI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 252(0xFC) + { Opcode = Opcode.CLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 253(0xFD) + { Opcode = Opcode.STD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 254(0xFE) + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 255(0xFF) + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16:16" |] + OpEn = OpEn.M } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16:32" |] + OpEn = OpEn.M } + { Opcode = Opcode.CALL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16:64" |] + OpEn = OpEn.M } + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M16:16" |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M16:32" |] + OpEn = OpEn.M } + { Opcode = Opcode.JMP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "M16:64" |] + OpEn = OpEn.M } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz64 |] + OpEn = OpEn.M } + |] + |] + +let (norTwo: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.LLDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.LTR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.SLDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.STR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.VERR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.VERW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + |] + [| // index 1(0x01) + { Opcode = Opcode.CLAC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.INVLPG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Unknown "M" |] + OpEn = OpEn.M } + { Opcode = Opcode.LGDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M16&32" |] + OpEn = OpEn.M } + { Opcode = Opcode.LIDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16&32" |] + OpEn = OpEn.M } + { Opcode = Opcode.LGDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "M16&64" |] + OpEn = OpEn.M } + { Opcode = Opcode.LIDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "M16&64" |] + OpEn = OpEn.M } + { Opcode = Opcode.LMSW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.MONITOR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MWAIT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.RDPKRU + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.RDTSCP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.RSTORSSP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.SAVEPREVSSP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SETSSBSY + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SGDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M" |] + OpEn = OpEn.M } + { Opcode = Opcode.SIDT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M" |] + OpEn = OpEn.M } + { Opcode = Opcode.SMSW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.SMSW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RMdiff(Sz32, Sz16) |] + OpEn = OpEn.M } + { Opcode = Opcode.SMSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RMdiff(Sz64, Sz16) |] + OpEn = OpEn.M } + { Opcode = Opcode.STAC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SWAPGS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.WRPKRU + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XEND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.A } + { Opcode = Opcode.XGETBV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XSETBV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.XTEST + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 2(0x02) + { Opcode = Opcode.LAR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.LAR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] + OpEn = OpEn.RM } + { Opcode = Opcode.LAR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RMdiff(Sz64, Sz16) |] + OpEn = OpEn.RM } + |] + [| // index 3(0x03) + { Opcode = Opcode.LSL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.LSL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] + OpEn = OpEn.RM } + { Opcode = Opcode.LSL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RMdiff(Sz32, Sz16) |] + OpEn = OpEn.RM } + |] + [| // index 4(0x04) + |] + [| // index 5(0x05) + { Opcode = Opcode.SYSCALL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 6(0x06) + { Opcode = Opcode.CLTS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 7(0x07) + { Opcode = Opcode.SYSRET + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SYSRET + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 8(0x08) + { Opcode = Opcode.INVD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 9(0x09) + { Opcode = Opcode.WBINVD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 10(0x0A) + |] + [| // index 11(0x0B) + { Opcode = Opcode.UD2 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 12(0x0C) + |] + [| // index 13(0x0D) + { Opcode = Opcode.PREFETCHW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.PREFETCHWT1 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.MOVSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVUPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVUPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 17(0x11) + { Opcode = Opcode.MOVSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.MOVSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.MOVUPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVUPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 18(0x12) + { Opcode = Opcode.MOVDDUP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVHLPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVLPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVLPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVSLDUP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 19(0x13) + { Opcode = Opcode.MOVLPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.MOVLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 20(0x14) + { Opcode = Opcode.UNPCKLPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.UNPCKLPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 21(0x15) + { Opcode = Opcode.UNPCKHPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.UNPCKHPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 22(0x16) + { Opcode = Opcode.MOVHPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVHPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVLHPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSHDUP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 23(0x17) + { Opcode = Opcode.MOVHPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.MOVHPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 24(0x18) + { Opcode = Opcode.PREFETCHT0 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.PREFETCHT1 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.PREFETCHT2 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.PREFETCHNTA + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + |] + [| // index 25(0x19) + |] + [| // index 26(0x1A) + { Opcode = Opcode.BNDCL + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDCL + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDCU + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDCU + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDLDX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; Unknown "MIB" |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDMOV + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND1"; Unknown "BND2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDMOV + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND1"; Unknown "BND2/M128" |] + OpEn = OpEn.RM } + |] + [| // index 27(0x1B) + { Opcode = Opcode.BNDCN + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDCN + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDMK + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; Mem Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDMK + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND"; Mem Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BNDMOV + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND1/M64"; Unknown "BND2" |] + OpEn = OpEn.MR } + { Opcode = Opcode.BNDMOV + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "BND1/M128"; Unknown "BND2" |] + OpEn = OpEn.MR } + { Opcode = Opcode.BNDSTX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MIB"; Unknown "BND" |] + OpEn = OpEn.MR } + |] + [| // index 28(0x1C) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Mem Sz8 |] + OpEn = OpEn.A } + |] + [| // index 29(0x1D) + |] + [| // index 30(0x1E) + { Opcode = Opcode.ENDBR32 + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.ENDBR64 + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.RDSSPD + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.R } + { Opcode = Opcode.RDSSPQ + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.R } + |] + [| // index 31(0x1F) + { Opcode = Opcode.NOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.NOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| RM Sz32 |] + OpEn = OpEn.M } + |] + [| // index 32(0x20) + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "CR0–CR7" |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "CR0–CR7" |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz64; Unknown "CR8" |] + OpEn = OpEn.MR } + |] + [| // index 33(0x21) + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "DR0–DR7" |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "DR0–DR7" |] + OpEn = OpEn.MR } + |] + [| // index 34(0x22) + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "CR8"; Reg Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 35(0x23) + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOV + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + { Opcode = Opcode.MOVAPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVAPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 41(0x29) + { Opcode = Opcode.MOVAPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVAPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 42(0x2A) + { Opcode = Opcode.CVTPI2PD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "MM/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTPI2PS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "MM/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTSI2SD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R32/M32" |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSI2SD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSI2SS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSI2SS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz64 |] + OpEn = OpEn.A } + |] + [| // index 43(0x2B) + { Opcode = Opcode.MOVNTPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVNTPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 44(0x2C) + { Opcode = Opcode.CVTTPD2PI + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTTPS2PI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTTSD2SI + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTTSD2SI + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTTSS2SI + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTTSS2SI + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 45(0x2D) + { Opcode = Opcode.CVTPD2PI + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTPS2PI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CVTSD2SI + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSD2SI + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSS2SI + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSS2SI + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 46(0x2E) + { Opcode = Opcode.UCOMISD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.UCOMISS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 47(0x2F) + { Opcode = Opcode.COMISD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.COMISS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 48(0x30) + { Opcode = Opcode.WRMSR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 49(0x31) + { Opcode = Opcode.RDTSC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 50(0x32) + { Opcode = Opcode.RDMSR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 51(0x33) + { Opcode = Opcode.RDPMC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 52(0x34) + { Opcode = Opcode.SYSENTER + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 53(0x35) + { Opcode = Opcode.SYSEXIT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.SYSEXIT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.None } + |] + [| // index 56(0x38) + |] + [| // index 57(0x39) + |] + [| // index 58(0x3A) + |] + [| // index 59(0x3B) + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + |] + [| // index 64(0x40) + { Opcode = Opcode.CMOVO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 65(0x41) + { Opcode = Opcode.CMOVNO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNO + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 66(0x42) + { Opcode = Opcode.CMOVB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 67(0x43) + { Opcode = Opcode.CMOVAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVAE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 68(0x44) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 69(0x45) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNZ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 70(0x46) + { Opcode = Opcode.CMOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 71(0x47) + { Opcode = Opcode.CMOVA + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVA + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVA + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 72(0x48) + { Opcode = Opcode.CMOVS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 73(0x49) + { Opcode = Opcode.CMOVNS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 74(0x4A) + { Opcode = Opcode.CMOVP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 75(0x4B) + { Opcode = Opcode.CMOVNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVNP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 76(0x4C) + { Opcode = Opcode.CMOVL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 77(0x4D) + { Opcode = Opcode.CMOVGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVGE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 78(0x4E) + { Opcode = Opcode.CMOVLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVLE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 79(0x4F) + { Opcode = Opcode.CMOVG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CMOVG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 80(0x50) + { Opcode = Opcode.MOVMSKPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVMSKPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 81(0x51) + { Opcode = Opcode.SQRTPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SQRTPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SQRTSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SQRTSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 82(0x52) + { Opcode = Opcode.RSQRTPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.RSQRTSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 83(0x53) + { Opcode = Opcode.RCPPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.RCPSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 84(0x54) + { Opcode = Opcode.ANDPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ANDPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 85(0x55) + { Opcode = Opcode.ANDNPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ANDNPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 86(0x56) + { Opcode = Opcode.ORPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ORPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 87(0x57) + { Opcode = Opcode.XORPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.XORPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 88(0x58) + { Opcode = Opcode.ADDPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ADDPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ADDSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.ADDSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 89(0x59) + { Opcode = Opcode.MULPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MULPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MULSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MULSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 90(0x5A) + { Opcode = Opcode.CVTPD2PS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTPS2PD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSD2SS + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTSS2SD + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 91(0x5B) + { Opcode = Opcode.CVTDQ2PS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTPS2DQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTTPS2DQ + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 92(0x5C) + { Opcode = Opcode.SUBPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SUBPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SUBSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.SUBSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 93(0x5D) + { Opcode = Opcode.MINPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MINPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MINSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MINSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 94(0x5E) + { Opcode = Opcode.DIVPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.DIVPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.DIVSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.DIVSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 95(0x5F) + { Opcode = Opcode.MAXPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MAXPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MAXSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MAXSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 96(0x60) + { Opcode = Opcode.PUNPCKLBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M32" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKLBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 97(0x61) + { Opcode = Opcode.PUNPCKLWD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M32" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKLWD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 98(0x62) + { Opcode = Opcode.PUNPCKLDQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M32" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKLDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 99(0x63) + { Opcode = Opcode.PACKSSWB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PACKSSWB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 100(0x64) + { Opcode = Opcode.PCMPGTB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPGTB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 101(0x65) + { Opcode = Opcode.PCMPGTW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPGTW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 102(0x66) + { Opcode = Opcode.PCMPGTD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPGTD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 103(0x67) + { Opcode = Opcode.PACKUSWB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PACKUSWB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 104(0x68) + { Opcode = Opcode.PUNPCKHBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKHBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 105(0x69) + { Opcode = Opcode.PUNPCKHWD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKHWD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 106(0x6A) + { Opcode = Opcode.PUNPCKHDQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PUNPCKHDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 107(0x6B) + { Opcode = Opcode.PACKSSDW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PACKSSDW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 108(0x6C) + { Opcode = Opcode.PUNPCKLQDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 109(0x6D) + { Opcode = Opcode.PUNPCKHQDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 110(0x6E) + { Opcode = Opcode.MOVD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; RM Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; RM Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz64 |] + OpEn = OpEn.A } + |] + [| // index 111(0x6F) + { Opcode = Opcode.MOVDQA + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVDQU + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + |] + [| // index 112(0x70) + { Opcode = Opcode.PSHUFD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PSHUFHW + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PSHUFLW + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PSHUFW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 113(0x71) + { Opcode = Opcode.PSLLW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "MM1"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSLLW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRAW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRAW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 114(0x72) + { Opcode = Opcode.PSLLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSLLD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRAD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 115(0x73) + { Opcode = Opcode.PSLLDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PSLLQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSLLQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRLQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.PSRLQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 116(0x74) + { Opcode = Opcode.PCMPEQB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPEQB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 117(0x75) + { Opcode = Opcode.PCMPEQW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPEQW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 118(0x76) + { Opcode = Opcode.PCMPEQD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PCMPEQD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 119(0x77) + { Opcode = Opcode.EMMS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + { Opcode = Opcode.HADDPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.HADDPS + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 125(0x7D) + { Opcode = Opcode.HSUBPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.HSUBPS + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 126(0x7E) + { Opcode = Opcode.MOVD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Unknown "MM" |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Unknown "MM" |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVQ + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 127(0x7F) + { Opcode = Opcode.MOVDQA + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVDQU + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM/M64"; Unknown "MM" |] + OpEn = OpEn.B } + |] + [| // index 128(0x80) + { Opcode = Opcode.JO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 129(0x81) + { Opcode = Opcode.JNO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 130(0x82) + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 131(0x83) + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JAE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 132(0x84) + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 133(0x85) + { Opcode = Opcode.JNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 134(0x86) + { Opcode = Opcode.JBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 135(0x87) + { Opcode = Opcode.JNBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 136(0x88) + { Opcode = Opcode.JS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 137(0x89) + { Opcode = Opcode.JNS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 138(0x8A) + { Opcode = Opcode.JP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 139(0x8B) + { Opcode = Opcode.JNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 140(0x8C) + { Opcode = Opcode.JL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 141(0x8D) + { Opcode = Opcode.JGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JGE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 142(0x8E) + { Opcode = Opcode.JNG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 143(0x8F) + { Opcode = Opcode.JNLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz16 |] + OpEn = OpEn.D } + { Opcode = Opcode.JNLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Rel Sz32 |] + OpEn = OpEn.D } + |] + [| // index 144(0x90) + { Opcode = Opcode.SETO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 145(0x91) + { Opcode = Opcode.SETNO + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 146(0x92) + { Opcode = Opcode.SETB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 147(0x93) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.SETNB + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 148(0x94) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.SETZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 149(0x95) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.SETNZ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 150(0x96) + { Opcode = Opcode.SETBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 151(0x97) + { Opcode = Opcode.SETA + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 152(0x98) + { Opcode = Opcode.SETS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 153(0x99) + { Opcode = Opcode.SETNS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 154(0x9A) + { Opcode = Opcode.SETP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 155(0x9B) + { Opcode = Opcode.SETNP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 156(0x9C) + { Opcode = Opcode.SETL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 157(0x9D) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.SETNL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 158(0x9E) + { Opcode = Opcode.SETLE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 159(0x9F) + { Opcode = Opcode.SETG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| RM Sz8 |] + OpEn = OpEn.M } + |] + [| // index 160(0xA0) + { Opcode = Opcode.PUSH + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "FS" |] + OpEn = OpEn.ZO } + |] + [| // index 161(0xA1) + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "FS" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "FS" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "FS" |] + OpEn = OpEn.ZO } + |] + [| // index 162(0xA2) + { Opcode = Opcode.CPUID + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 163(0xA3) + { Opcode = Opcode.BT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 164(0xA4) + { Opcode = Opcode.SHLD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] + OpEn = OpEn.MRI } + { Opcode = Opcode.SHLD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] + OpEn = OpEn.MRI } + { Opcode = Opcode.SHLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] + OpEn = OpEn.MRI } + |] + [| // index 165(0xA5) + { Opcode = Opcode.SHLD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] + OpEn = OpEn.MRC } + { Opcode = Opcode.SHLD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] + OpEn = OpEn.MRC } + { Opcode = Opcode.SHLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] + OpEn = OpEn.MRC } + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + { Opcode = Opcode.PUSH + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "GS" |] + OpEn = OpEn.ZO } + |] + [| // index 169(0xA9) + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "GS" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "GS" |] + OpEn = OpEn.ZO } + { Opcode = Opcode.POP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "GS" |] + OpEn = OpEn.ZO } + |] + [| // index 170(0xAA) + { Opcode = Opcode.RSM + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 171(0xAB) + { Opcode = Opcode.BTS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 172(0xAC) + { Opcode = Opcode.SHRD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] + OpEn = OpEn.MRI } + { Opcode = Opcode.SHRD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] + OpEn = OpEn.MRI } + { Opcode = Opcode.SHRD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] + OpEn = OpEn.MRI } + |] + [| // index 173(0xAD) + { Opcode = Opcode.SHRD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] + OpEn = OpEn.MRC } + { Opcode = Opcode.SHRD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] + OpEn = OpEn.MRC } + { Opcode = Opcode.SHRD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] + OpEn = OpEn.MRC } + |] + [| // index 174(0xAE) + { Opcode = Opcode.CLFLUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.CLFLUSHOPT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.CLRSSBSY + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Mem Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.CLWB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Mem Sz8 |] + OpEn = OpEn.M } + { Opcode = Opcode.FXRSTOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M512BYTE" |] + OpEn = OpEn.M } + { Opcode = Opcode.FXRSTOR64 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M512BYTE" |] + OpEn = OpEn.M } + { Opcode = Opcode.FXSAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M512BYTE" |] + OpEn = OpEn.M } + { Opcode = Opcode.FXSAVE64 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Unknown "M512BYTE" |] + OpEn = OpEn.M } + { Opcode = Opcode.INCSSPD + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Reg Sz32 |] + OpEn = OpEn.R } + { Opcode = Opcode.INCSSPQ + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Reg Sz64 |] + OpEn = OpEn.R } + { Opcode = Opcode.LDMXCSR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Mem Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.LFENCE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.MFENCE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "R64/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "R32/M32" |] + OpEn = OpEn.RM } + { Opcode = Opcode.RDFSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDFSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDGSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDGSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.SFENCE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.STMXCSR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Mem Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz32; Unknown ""; Unknown "" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "R16/R32/R64" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz32; Unknown ""; Unknown "" |] + OpEn = OpEn.A } + { Opcode = Opcode.WRFSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.WRFSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.WRGSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.WRGSBASE + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.XRSTOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVEOPT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + |] + [| // index 175(0xAF) + { Opcode = Opcode.IMUL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.IMUL + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.IMUL + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 176(0xB0) + { Opcode = Opcode.CMPXCHG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 177(0xB1) + { Opcode = Opcode.CMPXCHG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.CMPXCHG + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.CMPXCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 178(0xB2) + { Opcode = Opcode.LSS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16:16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LSS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M16:32" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LSS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "M16:64" |] + OpEn = OpEn.RM } + |] + [| // index 179(0xB3) + { Opcode = Opcode.BTR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 180(0xB4) + { Opcode = Opcode.LFS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16:16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LFS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M16:32" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LFS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "M16:64" |] + OpEn = OpEn.RM } + |] + [| // index 181(0xB5) + { Opcode = Opcode.LGS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Unknown "M16:16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LGS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M16:32" |] + OpEn = OpEn.RM } + { Opcode = Opcode.LGS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "M16:64" |] + OpEn = OpEn.RM } + |] + [| // index 182(0xB6) + { Opcode = Opcode.MOVZX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVZX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVZX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 183(0xB7) + { Opcode = Opcode.MOVZX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVZX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz16 |] + OpEn = OpEn.RM } + |] + [| // index 184(0xB8) + { Opcode = Opcode.POPCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.POPCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.POPCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 185(0xB9) + { Opcode = Opcode.UD1 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + |] + [| // index 186(0xBA) + { Opcode = Opcode.BT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BT + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BT + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz16; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz32; Imm Sz8 |] + OpEn = OpEn.MI } + { Opcode = Opcode.BTS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| RM Sz64; Imm Sz8 |] + OpEn = OpEn.MI } + |] + [| // index 187(0xBB) + { Opcode = Opcode.BTC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTC + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.BTC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 188(0xBC) + { Opcode = Opcode.BSF + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BSF + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BSF + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.TZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.A } + { Opcode = Opcode.TZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.TZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.A } + |] + [| // index 189(0xBD) + { Opcode = Opcode.BSR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BSR + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.BSR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.LZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.LZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.LZCNT + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 190(0xBE) + { Opcode = Opcode.MOVSX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 191(0xBF) + { Opcode = Opcode.MOVSX + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVSX + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz16 |] + OpEn = OpEn.RM } + |] + [| // index 192(0xC0) + { Opcode = Opcode.XADD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz8; Reg Sz8 |] + OpEn = OpEn.MR } + |] + [| // index 193(0xC1) + { Opcode = Opcode.XADD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XADD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.XADD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 194(0xC2) + { Opcode = Opcode.CMPPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.CMPPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.CMPSD + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.CMPSS + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 195(0xC3) + { Opcode = Opcode.MOVNTI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOVNTI + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 196(0xC4) + { Opcode = Opcode.PINSRW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; RMdiff(Sz32, Sz16); Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PINSRW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 197(0xC5) + { Opcode = Opcode.PEXTRW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Unknown "MM"; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PEXTRW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 198(0xC6) + { Opcode = Opcode.SHUFPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.SHUFPS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 199(0xC7) + { Opcode = Opcode.CMPXCHG8B + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Mem Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.CMPXCHG16B + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "M128" |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz32 |] + OpEn = OpEn.R } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz64 |] + OpEn = OpEn.R } + { Opcode = Opcode.RDRAND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDRAND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDRAND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDSEED + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz16 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDSEED + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.RDSEED + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz64 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "REG" |] + OpEn = OpEn.A } + { Opcode = Opcode.XRSTORS + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XRSTORS64 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp3 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVEC64 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp4 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVES + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + { Opcode = Opcode.XSAVES64 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "MEM" |] + OpEn = OpEn.M } + |] + [| // index 200(0xC8) + { Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O } + { Opcode = Opcode.BSWAP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O } + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + |] + [| // index 208(0xD0) + { Opcode = Opcode.ADDSUBPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADDSUBPS + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 209(0xD1) + { Opcode = Opcode.PSRLW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRLW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 210(0xD2) + { Opcode = Opcode.PSRLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRLD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 211(0xD3) + { Opcode = Opcode.PSRLQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRLQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 212(0xD4) + { Opcode = Opcode.PADDQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 213(0xD5) + { Opcode = Opcode.PMULLW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMULLW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 214(0xD6) + { Opcode = Opcode.MOVDQ2Q + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.MOVQ2DQ + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "MM" |] + OpEn = OpEn.RM } + |] + [| // index 215(0xD7) + { Opcode = Opcode.PMOVMSKB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Unknown "MM" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PMOVMSKB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 216(0xD8) + { Opcode = Opcode.PSUBUSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBUSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 217(0xD9) + { Opcode = Opcode.PSUBUSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBUSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 218(0xDA) + { Opcode = Opcode.PMINUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMINUB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 219(0xDB) + { Opcode = Opcode.PAND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PAND + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 220(0xDC) + { Opcode = Opcode.PADDUSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDUSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 221(0xDD) + { Opcode = Opcode.PADDUSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDUSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 222(0xDE) + { Opcode = Opcode.PMAXUB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMAXUB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 223(0xDF) + { Opcode = Opcode.PANDN + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PANDN + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 224(0xE0) + { Opcode = Opcode.PAVGB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PAVGB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 225(0xE1) + { Opcode = Opcode.PSRAW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRAW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 226(0xE2) + { Opcode = Opcode.PSRAD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSRAD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 227(0xE3) + { Opcode = Opcode.PAVGW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PAVGW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 228(0xE4) + { Opcode = Opcode.PMULHUW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMULHUW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 229(0xE5) + { Opcode = Opcode.PMULHW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMULHW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 230(0xE6) + { Opcode = Opcode.CVTDQ2PD + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTPD2DQ + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.CVTTPD2DQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 231(0xE7) + { Opcode = Opcode.MOVNTDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.MOVNTQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Unknown "MM" |] + OpEn = OpEn.MR } + |] + [| // index 232(0xE8) + { Opcode = Opcode.PSUBSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 233(0xE9) + { Opcode = Opcode.PSUBSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 234(0xEA) + { Opcode = Opcode.PMINSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMINSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 235(0xEB) + { Opcode = Opcode.POR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.POR + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 236(0xEC) + { Opcode = Opcode.PADDSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 237(0xED) + { Opcode = Opcode.PADDSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 238(0xEE) + { Opcode = Opcode.PMAXSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMAXSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 239(0xEF) + { Opcode = Opcode.PXOR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PXOR + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 240(0xF0) + { Opcode = Opcode.LDDQU + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "MEM" |] + OpEn = OpEn.RM } + |] + [| // index 241(0xF1) + { Opcode = Opcode.PSLLW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSLLW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 242(0xF2) + { Opcode = Opcode.PSLLD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSLLD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 243(0xF3) + { Opcode = Opcode.PSLLQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSLLQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 244(0xF4) + { Opcode = Opcode.PMULUDQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMULUDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 245(0xF5) + { Opcode = Opcode.PMADDWD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMADDWD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 246(0xF6) + { Opcode = Opcode.PSADBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSADBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 247(0xF7) + { Opcode = Opcode.MASKMOVDQU + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MASKMOVQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2" |] + OpEn = OpEn.RM } + |] + [| // index 248(0xF8) + { Opcode = Opcode.PSUBB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 249(0xF9) + { Opcode = Opcode.PSUBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 250(0xFA) + { Opcode = Opcode.PSUBD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 251(0xFB) + { Opcode = Opcode.PSUBQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSUBQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 252(0xFC) + { Opcode = Opcode.PADDB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 253(0xFD) + { Opcode = Opcode.PADDW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 254(0xFE) + { Opcode = Opcode.PADDD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM"; Unknown "MM/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PADDD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 255(0xFF) + { Opcode = Opcode.UD0 + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + |] + |] + +let (norThree38: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.PSHUFB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PSHUFB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 1(0x01) + { Opcode = Opcode.PHADDW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHADDW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 2(0x02) + { Opcode = Opcode.PHADDD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHADDD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 3(0x03) + { Opcode = Opcode.PHADDSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHADDSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 4(0x04) + { Opcode = Opcode.PMADDUBSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMADDUBSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 5(0x05) + { Opcode = Opcode.PHSUBW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHSUBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 6(0x06) + { Opcode = Opcode.PHSUBD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHSUBD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 7(0x07) + { Opcode = Opcode.PHSUBSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PHSUBSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 8(0x08) + { Opcode = Opcode.PSIGNB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PSIGNB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 9(0x09) + { Opcode = Opcode.PSIGNW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PSIGNW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 10(0x0A) + { Opcode = Opcode.PSIGND + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.PSIGND + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 11(0x0B) + { Opcode = Opcode.PMULHRSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PMULHRSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 12(0x0C) + |] + [| // index 13(0x0D) + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.PBLENDVB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 17(0x11) + |] + [| // index 18(0x12) + |] + [| // index 19(0x13) + |] + [| // index 20(0x14) + { Opcode = Opcode.BLENDVPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RM0 } + |] + [| // index 21(0x15) + { Opcode = Opcode.BLENDVPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RM0 } + |] + [| // index 22(0x16) + |] + [| // index 23(0x17) + { Opcode = Opcode.PTEST + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 24(0x18) + |] + [| // index 25(0x19) + |] + [| // index 26(0x1A) + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + { Opcode = Opcode.PABSB + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PABSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 29(0x1D) + { Opcode = Opcode.PABSW + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PABSW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 30(0x1E) + { Opcode = Opcode.PABSD + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + OpEn = OpEn.A } + { Opcode = Opcode.PABSD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + { Opcode = Opcode.PMOVSXBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 33(0x21) + { Opcode = Opcode.PMOVSXBD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 34(0x22) + { Opcode = Opcode.PMOVSXBQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 35(0x23) + { Opcode = Opcode.PMOVSXWD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 36(0x24) + { Opcode = Opcode.PMOVSXWQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 37(0x25) + { Opcode = Opcode.PMOVSXDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + { Opcode = Opcode.PMULDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 41(0x29) + { Opcode = Opcode.PCMPEQQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 42(0x2A) + { Opcode = Opcode.MOVNTDQA + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 43(0x2B) + { Opcode = Opcode.PACKUSDW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 44(0x2C) + |] + [| // index 45(0x2D) + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + |] + [| // index 48(0x30) + { Opcode = Opcode.PMOVZXBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 49(0x31) + { Opcode = Opcode.PMOVZXBD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 50(0x32) + { Opcode = Opcode.PMOVZXBQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 51(0x33) + { Opcode = Opcode.PMOVZXWD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 52(0x34) + { Opcode = Opcode.PMOVZXWQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 53(0x35) + { Opcode = Opcode.PMOVZXDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + { Opcode = Opcode.PCMPGTQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 56(0x38) + { Opcode = Opcode.PMINSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 57(0x39) + { Opcode = Opcode.PMINSD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 58(0x3A) + { Opcode = Opcode.PMINUW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 59(0x3B) + { Opcode = Opcode.PMINUD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 60(0x3C) + { Opcode = Opcode.PMAXSB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 61(0x3D) + { Opcode = Opcode.PMAXSD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 62(0x3E) + { Opcode = Opcode.PMAXUW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 63(0x3F) + { Opcode = Opcode.PMAXUD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 64(0x40) + { Opcode = Opcode.PMULLD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 65(0x41) + { Opcode = Opcode.PHMINPOSUW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 66(0x42) + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + |] + [| // index 81(0x51) + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + |] + [| // index 85(0x55) + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + |] + [| // index 89(0x59) + |] + [| // index 90(0x5A) + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + |] + [| // index 97(0x61) + |] + [| // index 98(0x62) + |] + [| // index 99(0x63) + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + |] + [| // index 113(0x71) + |] + [| // index 114(0x72) + |] + [| // index 115(0x73) + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + |] + [| // index 118(0x76) + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + |] + [| // index 127(0x7F) + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + { Opcode = Opcode.INVPCID + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "M128" |] + OpEn = OpEn.RM } + { Opcode = Opcode.INVPCID + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "M128" |] + OpEn = OpEn.RM } + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + |] + [| // index 153(0x99) + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + { Opcode = Opcode.SHA1NEXTE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 201(0xC9) + { Opcode = Opcode.SHA1MSG1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 202(0xCA) + { Opcode = Opcode.SHA1MSG2 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 203(0xCB) + { Opcode = Opcode.SHA256RNDS2 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RMI } + |] + [| // index 204(0xCC) + { Opcode = Opcode.SHA256MSG1 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 205(0xCD) + { Opcode = Opcode.SHA256MSG2 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + { Opcode = Opcode.GF2P8MULB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + |] + [| // index 211(0xD3) + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M384"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M512"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M384"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M512"; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + |] + [| // index 219(0xDB) + { Opcode = Opcode.AESIMC + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 220(0xDC) + { Opcode = Opcode.AESENC + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M384" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown ""; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 221(0xDD) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M384" |] + OpEn = OpEn.A } + { Opcode = Opcode.AESENCLAST + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 222(0xDE) + { Opcode = Opcode.AESDEC + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M512" |] + OpEn = OpEn.A } + |] + [| // index 223(0xDF) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.AESDECLAST + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 224(0xE0) + |] + [| // index 225(0xE1) + |] + [| // index 226(0xE2) + |] + [| // index 227(0xE3) + |] + [| // index 228(0xE4) + |] + [| // index 229(0xE5) + |] + [| // index 230(0xE6) + |] + [| // index 231(0xE7) + |] + [| // index 232(0xE8) + |] + [| // index 233(0xE9) + |] + [| // index 234(0xEA) + |] + [| // index 235(0xEB) + |] + [| // index 236(0xEC) + |] + [| // index 237(0xED) + |] + [| // index 238(0xEE) + |] + [| // index 239(0xEF) + |] + [| // index 240(0xF0) + { Opcode = Opcode.CRC32 + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CRC32 + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz8 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz16; Mem Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Mem Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Mem Sz64 |] + OpEn = OpEn.RM } + |] + [| // index 241(0xF1) + { Opcode = Opcode.CRC32 + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz16 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CRC32 + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.CRC32 + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.MOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz16; Reg Sz16 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOVBE + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.MOVBE + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 242(0xF2) + |] + [| // index 243(0xF3) + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + { Opcode = Opcode.WRUSSD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.WRUSSQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 246(0xF6) + { Opcode = Opcode.ADCX + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADCX + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADOX + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.RM } + { Opcode = Opcode.ADOX + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.RM } + { Opcode = Opcode.WRSSD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32 |] + OpEn = OpEn.MR } + { Opcode = Opcode.WRSSQ + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64 |] + OpEn = OpEn.MR } + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F2 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "R32/R64"; Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Unknown "R32/R64"; Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "R16/R32/R64"; Unknown "M512" |] + OpEn = OpEn.A } + |] + [| // index 249(0xF9) + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 250(0xFA) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Reg Sz32; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 251(0xFB) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + +let (norThree3A: InstructionCore[][]) = + [| + [| // index 0(0x00) + |] + [| // index 1(0x01) + |] + [| // index 2(0x02) + |] + [| // index 3(0x03) + |] + [| // index 4(0x04) + |] + [| // index 5(0x05) + |] + [| // index 6(0x06) + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + { Opcode = Opcode.ROUNDPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 9(0x09) + { Opcode = Opcode.ROUNDPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 10(0x0A) + { Opcode = Opcode.ROUNDSS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 11(0x0B) + { Opcode = Opcode.ROUNDSD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 12(0x0C) + { Opcode = Opcode.BLENDPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 13(0x0D) + { Opcode = Opcode.BLENDPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 14(0x0E) + { Opcode = Opcode.PBLENDW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 15(0x0F) + { Opcode = Opcode.PALIGNR + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PALIGNR + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 16(0x10) + |] + [| // index 17(0x11) + |] + [| // index 18(0x12) + |] + [| // index 19(0x13) + |] + [| // index 20(0x14) + { Opcode = Opcode.PEXTRB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 21(0x15) + { Opcode = Opcode.PEXTRW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 22(0x16) + { Opcode = Opcode.PEXTRD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PEXTRQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 23(0x17) + { Opcode = Opcode.EXTRACTPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 24(0x18) + |] + [| // index 25(0x19) + |] + [| // index 26(0x1A) + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + |] + [| // index 29(0x1D) + |] + [| // index 30(0x1E) + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + { Opcode = Opcode.PINSRB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 33(0x21) + { Opcode = Opcode.INSERTPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 34(0x22) + { Opcode = Opcode.PINSRD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.PINSRQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 35(0x23) + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + |] + [| // index 41(0x29) + |] + [| // index 42(0x2A) + |] + [| // index 43(0x2B) + |] + [| // index 44(0x2C) + |] + [| // index 45(0x2D) + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + |] + [| // index 48(0x30) + |] + [| // index 49(0x31) + |] + [| // index 50(0x32) + |] + [| // index 51(0x33) + |] + [| // index 52(0x34) + |] + [| // index 53(0x35) + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + |] + [| // index 56(0x38) + |] + [| // index 57(0x39) + |] + [| // index 58(0x3A) + |] + [| // index 59(0x3B) + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + |] + [| // index 64(0x40) + { Opcode = Opcode.DPPS + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 65(0x41) + { Opcode = Opcode.DPPD + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 66(0x42) + { Opcode = Opcode.MPSADBW + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + { Opcode = Opcode.PCLMULQDQ + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + |] + [| // index 81(0x51) + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + |] + [| // index 85(0x55) + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + |] + [| // index 89(0x59) + |] + [| // index 90(0x5A) + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + { Opcode = Opcode.PCMPESTRM + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 97(0x61) + { Opcode = Opcode.PCMPESTRI + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 98(0x62) + { Opcode = Opcode.PCMPISTRM + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 99(0x63) + { Opcode = Opcode.PCMPISTRI + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + |] + [| // index 113(0x71) + |] + [| // index 114(0x72) + |] + [| // index 115(0x73) + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + |] + [| // index 118(0x76) + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + |] + [| // index 127(0x7F) + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + |] + [| // index 153(0x99) + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + { Opcode = Opcode.SHA1RNDS4 + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + { Opcode = Opcode.GF2P8AFFINEQB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 207(0xCF) + { Opcode = Opcode.GF2P8AFFINEINVQB + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + |] + [| // index 211(0xD3) + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + |] + [| // index 219(0xDB) + |] + [| // index 220(0xDC) + |] + [| // index 221(0xDD) + |] + [| // index 222(0xDE) + |] + [| // index 223(0xDF) + { Opcode = Opcode.AESKEYGENASSIST + PrefixType = Legacy P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 224(0xE0) + |] + [| // index 225(0xE1) + |] + [| // index 226(0xE2) + |] + [| // index 227(0xE3) + |] + [| // index 228(0xE4) + |] + [| // index 229(0xE5) + |] + [| // index 230(0xE6) + |] + [| // index 231(0xE7) + |] + [| // index 232(0xE8) + |] + [| // index 233(0xE9) + |] + [| // index 234(0xEA) + |] + [| // index 235(0xEB) + |] + [| // index 236(0xEC) + |] + [| // index 237(0xED) + |] + [| // index 238(0xEE) + |] + [| // index 239(0xEF) + |] + [| // index 240(0xF0) + { Opcode = Opcode.InvalOP + PrefixType = Legacy F3 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz8; Unknown "" |] + OpEn = OpEn.A } + |] + [| // index 241(0xF1) + |] + [| // index 242(0xF2) + |] + [| // index 243(0xF3) + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + |] + [| // index 246(0xF6) + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + |] + [| // index 249(0xF9) + |] + [| // index 250(0xFA) + |] + [| // index 251(0xFB) + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + +let (vexTwo: InstructionCore[][]) = + [| + [| // index 0(0x00) + |] + [| // index 1(0x01) + |] + [| // index 2(0x02) + |] + [| // index 3(0x03) + |] + [| // index 4(0x04) + |] + [| // index 5(0x05) + |] + [| // index 6(0x06) + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + |] + [| // index 9(0x09) + |] + [| // index 10(0x0A) + |] + [| // index 11(0x0B) + |] + [| // index 12(0x0C) + |] + [| // index 13(0x0D) + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz32 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 17(0x11) + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz32; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + |] + [| // index 18(0x12) + { Opcode = Opcode.VMOVDDUP + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVDDUP + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVHLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMOVLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSLDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVSLDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 19(0x13) + { Opcode = Opcode.VMOVLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 20(0x14) + { Opcode = Opcode.VUNPCKLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 21(0x15) + { Opcode = Opcode.VUNPCKHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUNPCKHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 22(0x16) + { Opcode = Opcode.VMOVHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVLHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMOVSHDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVSHDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 23(0x17) + { Opcode = Opcode.VMOVHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 24(0x18) + |] + [| // index 25(0x19) + |] + [| // index 26(0x1A) + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + |] + [| // index 29(0x1D) + |] + [| // index 30(0x1E) + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + |] + [| // index 33(0x21) + |] + [| // index 34(0x22) + |] + [| // index 35(0x23) + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 41(0x29) + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + |] + [| // index 42(0x2A) + { Opcode = Opcode.VCVTSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] + OpEn = OpEn.B } + |] + [| // index 43(0x2B) + { Opcode = Opcode.VMOVNTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVNTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVNTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVNTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 44(0x2C) + { Opcode = Opcode.VCVTTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 45(0x2D) + { Opcode = Opcode.VCVTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 46(0x2E) + { Opcode = Opcode.VUCOMISD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VUCOMISS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 47(0x2F) + { Opcode = Opcode.VCOMISD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMISS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 48(0x30) + |] + [| // index 49(0x31) + |] + [| // index 50(0x32) + |] + [| // index 51(0x33) + |] + [| // index 52(0x34) + |] + [| // index 53(0x35) + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + |] + [| // index 56(0x38) + |] + [| // index 57(0x39) + |] + [| // index 58(0x3A) + |] + [| // index 59(0x3B) + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + |] + [| // index 64(0x40) + |] + [| // index 65(0x41) + { Opcode = Opcode.KANDW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 66(0x42) + { Opcode = Opcode.KANDNW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDNB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDNQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KANDND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + { Opcode = Opcode.KNOTW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KNOTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KNOTQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KNOTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + |] + [| // index 69(0x45) + { Opcode = Opcode.KORW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KORB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KORQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 70(0x46) + { Opcode = Opcode.KXNORW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXNORB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXNORQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXNORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 71(0x47) + { Opcode = Opcode.KXORW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXORB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXORQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KXORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + { Opcode = Opcode.KADDW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KADDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 75(0x4B) + { Opcode = Opcode.KUNPCKBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KUNPCKWD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + { Opcode = Opcode.KUNPCKDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + OpEn = OpEn.RVR } + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + { Opcode = Opcode.VMOVMSKPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VMOVMSKPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VMOVMSKPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VMOVMSKPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz256 |] + OpEn = OpEn.RM } + |] + [| // index 81(0x51) + { Opcode = Opcode.VSQRTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSQRTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSQRTSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 82(0x52) + { Opcode = Opcode.VRSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VRSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VRSQRTSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + |] + [| // index 83(0x53) + { Opcode = Opcode.VRCPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VRCPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VRCPSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + |] + [| // index 84(0x54) + { Opcode = Opcode.VANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 85(0x55) + { Opcode = Opcode.VANDNPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDNPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDNPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VANDNPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 86(0x56) + { Opcode = Opcode.VORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 87(0x57) + { Opcode = Opcode.VXORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VXORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VXORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VXORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 88(0x58) + { Opcode = Opcode.VADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VADDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VADDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VADDSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VADDSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 89(0x59) + { Opcode = Opcode.VMULPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMULPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMULPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMULPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMULSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMULSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 90(0x5A) + { Opcode = Opcode.VCVTPD2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2PD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2PD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSD2SS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSS2SD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 91(0x5B) + { Opcode = Opcode.VCVTDQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTDQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2DQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2DQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 92(0x5C) + { Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSUBSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSUBSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 93(0x5D) + { Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMINSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMINSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 94(0x5E) + { Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VDIVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VDIVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 95(0x5F) + { Opcode = Opcode.VMAXPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMAXPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMAXPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMAXPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMAXSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMAXSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 96(0x60) + { Opcode = Opcode.VPUNPCKLBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKLBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 97(0x61) + { Opcode = Opcode.VPUNPCKLWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKLWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 98(0x62) + { Opcode = Opcode.VPUNPCKLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 99(0x63) + { Opcode = Opcode.VPACKSSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPACKSSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 100(0x64) + { Opcode = Opcode.VPCMPGTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPGTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 101(0x65) + { Opcode = Opcode.VPCMPGTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPGTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 102(0x66) + { Opcode = Opcode.VPCMPGTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPGTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 103(0x67) + { Opcode = Opcode.VPACKUSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPACKUSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 104(0x68) + { Opcode = Opcode.VPUNPCKHBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKHBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 105(0x69) + { Opcode = Opcode.VPUNPCKHWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKHWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 106(0x6A) + { Opcode = Opcode.VPUNPCKHDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKHDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 107(0x6B) + { Opcode = Opcode.VPACKSSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPACKSSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 108(0x6C) + { Opcode = Opcode.VPUNPCKLQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKLQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 109(0x6D) + { Opcode = Opcode.VPUNPCKHQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPUNPCKHQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 110(0x6E) + { Opcode = Opcode.VMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R32/M32" |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R64/M64" |] + OpEn = OpEn.A } + |] + [| // index 111(0x6F) + { Opcode = Opcode.VMOVDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVDQU + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVDQU + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 112(0x70) + { Opcode = Opcode.VPSHUFD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFHW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFHW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFLW + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFLW + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 113(0x71) + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + |] + [| // index 114(0x72) + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + |] + [| // index 115(0x73) + { Opcode = Opcode.VPSLLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSLLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.D } + |] + [| // index 116(0x74) + { Opcode = Opcode.VPCMPEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 117(0x75) + { Opcode = Opcode.VPCMPEQW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPEQW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 118(0x76) + { Opcode = Opcode.VPCMPEQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPEQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 119(0x77) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + { Opcode = Opcode.VZEROUPPER + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.ZO } + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + { Opcode = Opcode.VHADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHADDPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHADDPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 125(0x7D) + { Opcode = Opcode.VHSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHSUBPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VHSUBPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 126(0x7E) + { Opcode = Opcode.VMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32/M32"; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64/M64"; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 127(0x7F) + { Opcode = Opcode.VMOVDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVDQU + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVDQU + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.B } + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + { Opcode = Opcode.KMOVW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2/M16" |] + OpEn = OpEn.RM } + { Opcode = Opcode.KMOVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2/M8" |] + OpEn = OpEn.RM } + { Opcode = Opcode.KMOVQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2/M64" |] + OpEn = OpEn.RM } + { Opcode = Opcode.KMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2/M32" |] + OpEn = OpEn.RM } + |] + [| // index 145(0x91) + { Opcode = Opcode.KMOVW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz16; Unknown "K1" |] + OpEn = OpEn.MR } + { Opcode = Opcode.KMOVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz8; Unknown "K1" |] + OpEn = OpEn.MR } + { Opcode = Opcode.KMOVQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Unknown "K1" |] + OpEn = OpEn.MR } + { Opcode = Opcode.KMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz32; Unknown "K1" |] + OpEn = OpEn.MR } + |] + [| // index 146(0x92) + { Opcode = Opcode.KMOVW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz32 |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz32 |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz64 |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz32 |] + OpEn = OpEn.RR } + |] + [| // index 147(0x93) + { Opcode = Opcode.KMOVW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "K1" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "K1" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Unknown "K1" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KMOVD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Unknown "K1" |] + OpEn = OpEn.RR } + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + { Opcode = Opcode.KORTESTW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KORTESTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KORTESTQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KORTESTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + |] + [| // index 153(0x99) + { Opcode = Opcode.KTESTW + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KTESTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KTESTQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + { Opcode = Opcode.KTESTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2" |] + OpEn = OpEn.RR } + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Mem Sz32 |] + OpEn = OpEn.M } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp3 + Operands = [| Mem Sz32 |] + OpEn = OpEn.M } + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + { Opcode = Opcode.VCMPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCMPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCMPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCMPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCMPSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCMPSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + { Opcode = Opcode.VPINSRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 197(0xC5) + { Opcode = Opcode.VPEXTRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 198(0xC6) + { Opcode = Opcode.VSHUFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSHUFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSHUFPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSHUFPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + |] + [| // index 208(0xD0) + { Opcode = Opcode.VADDSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VADDSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VADDSUBPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VADDSUBPS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 209(0xD1) + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 210(0xD2) + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 211(0xD3) + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 212(0xD4) + { Opcode = Opcode.VPADDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 213(0xD5) + { Opcode = Opcode.VPMULLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 214(0xD6) + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 215(0xD7) + { Opcode = Opcode.VPMOVMSKB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVMSKB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz256 |] + OpEn = OpEn.RM } + |] + [| // index 216(0xD8) + { Opcode = Opcode.VPSUBUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 217(0xD9) + { Opcode = Opcode.VPSUBUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 218(0xDA) + { Opcode = Opcode.VPMINUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 219(0xDB) + { Opcode = Opcode.VPAND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPAND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 220(0xDC) + { Opcode = Opcode.VPADDUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 221(0xDD) + { Opcode = Opcode.VPADDUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 222(0xDE) + { Opcode = Opcode.VPMAXUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 223(0xDF) + { Opcode = Opcode.VPANDN + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPANDN + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 224(0xE0) + { Opcode = Opcode.VPAVGB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPAVGB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 225(0xE1) + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 226(0xE2) + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 227(0xE3) + { Opcode = Opcode.VPAVGW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPAVGW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 228(0xE4) + { Opcode = Opcode.VPMULHUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULHUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 229(0xE5) + { Opcode = Opcode.VPMULHW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULHW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 230(0xE6) + { Opcode = Opcode.VCVTDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2DQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2DQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 231(0xE7) + { Opcode = Opcode.VMOVNTDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVNTDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 232(0xE8) + { Opcode = Opcode.VPSUBSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 233(0xE9) + { Opcode = Opcode.VPSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 234(0xEA) + { Opcode = Opcode.VPMINSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 235(0xEB) + { Opcode = Opcode.VPOR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 236(0xEC) + { Opcode = Opcode.VPADDSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 237(0xED) + { Opcode = Opcode.VPADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 238(0xEE) + { Opcode = Opcode.VPMAXSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 239(0xEF) + { Opcode = Opcode.VPXOR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPXOR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 240(0xF0) + { Opcode = Opcode.VLDDQU + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VLDDQU + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.RM } + |] + [| // index 241(0xF1) + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 242(0xF2) + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 243(0xF3) + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.C } + |] + [| // index 244(0xF4) + { Opcode = Opcode.VPMULUDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULUDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 245(0xF5) + { Opcode = Opcode.VPMADDWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADDWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 246(0xF6) + { Opcode = Opcode.VPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 247(0xF7) + { Opcode = Opcode.VMASKMOVDQU + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 248(0xF8) + { Opcode = Opcode.VPSUBB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 249(0xF9) + { Opcode = Opcode.VPSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 250(0xFA) + { Opcode = Opcode.VPSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 251(0xFB) + { Opcode = Opcode.VPSUBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSUBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 252(0xFC) + { Opcode = Opcode.VPADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 253(0xFD) + { Opcode = Opcode.VPADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 254(0xFE) + { Opcode = Opcode.VPADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 255(0xFF) + |] + |] + +let (vexThree38: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.VPSHUFB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 1(0x01) + { Opcode = Opcode.VPHADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 2(0x02) + { Opcode = Opcode.VPHADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 3(0x03) + { Opcode = Opcode.VPHADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 4(0x04) + { Opcode = Opcode.VPMADDUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADDUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 5(0x05) + { Opcode = Opcode.VPHSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 6(0x06) + { Opcode = Opcode.VPHSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 7(0x07) + { Opcode = Opcode.VPHSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPHSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 8(0x08) + { Opcode = Opcode.VPSIGNB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPSIGNB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 9(0x09) + { Opcode = Opcode.VPSIGNW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPSIGNW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 10(0x0A) + { Opcode = Opcode.VPSIGND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPSIGND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.RVM } + |] + [| // index 11(0x0B) + { Opcode = Opcode.VPMULHRSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULHRSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 12(0x0C) + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 13(0x0D) + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 14(0x0E) + { Opcode = Opcode.VTESTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VTESTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.RM } + |] + [| // index 15(0x0F) + { Opcode = Opcode.VTESTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VTESTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.RM } + |] + [| // index 16(0x10) + |] + [| // index 17(0x11) + |] + [| // index 18(0x12) + |] + [| // index 19(0x13) + { Opcode = Opcode.VCVTPH2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPH2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 20(0x14) + |] + [| // index 21(0x15) + |] + [| // index 22(0x16) + { Opcode = Opcode.VPERMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 23(0x17) + { Opcode = Opcode.VPTEST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPTEST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.RM } + |] + [| // index 24(0x18) + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Mem Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 25(0x19) + { Opcode = Opcode.VBROADCASTSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Mem Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBROADCASTSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 26(0x1A) + { Opcode = Opcode.VBROADCASTF128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + { Opcode = Opcode.VPABSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPABSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 29(0x1D) + { Opcode = Opcode.VPABSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPABSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 30(0x1E) + { Opcode = Opcode.VPABSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPABSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + { Opcode = Opcode.VPMOVSXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 33(0x21) + { Opcode = Opcode.VPMOVSXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 34(0x22) + { Opcode = Opcode.VPMOVSXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 35(0x23) + { Opcode = Opcode.VPMOVSXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 36(0x24) + { Opcode = Opcode.VPMOVSXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 37(0x25) + { Opcode = Opcode.VPMOVSXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + { Opcode = Opcode.VPMULDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 41(0x29) + { Opcode = Opcode.VPCMPEQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPEQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 42(0x2A) + { Opcode = Opcode.VMOVNTDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.VMOVNTDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + |] + [| // index 43(0x2B) + { Opcode = Opcode.VPACKUSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPACKUSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 44(0x2C) + { Opcode = Opcode.VMASKMOVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMASKMOVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + OpEn = OpEn.RVM } + |] + [| // index 45(0x2D) + { Opcode = Opcode.VMASKMOVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMASKMOVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + OpEn = OpEn.RVM } + |] + [| // index 46(0x2E) + { Opcode = Opcode.VMASKMOVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.MVR } + { Opcode = Opcode.VMASKMOVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + OpEn = OpEn.MVR } + |] + [| // index 47(0x2F) + { Opcode = Opcode.VMASKMOVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.MVR } + { Opcode = Opcode.VMASKMOVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + OpEn = OpEn.MVR } + |] + [| // index 48(0x30) + { Opcode = Opcode.VPMOVZXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 49(0x31) + { Opcode = Opcode.VPMOVZXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 50(0x32) + { Opcode = Opcode.VPMOVZXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 51(0x33) + { Opcode = Opcode.VPMOVZXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 52(0x34) + { Opcode = Opcode.VPMOVZXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 53(0x35) + { Opcode = Opcode.VPMOVZXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVZXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + |] + [| // index 54(0x36) + { Opcode = Opcode.VPERMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 55(0x37) + { Opcode = Opcode.VPCMPGTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCMPGTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 56(0x38) + { Opcode = Opcode.VPMINSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 57(0x39) + { Opcode = Opcode.VPMINSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 58(0x3A) + { Opcode = Opcode.VPMINUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 59(0x3B) + { Opcode = Opcode.VPMINUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMINUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 60(0x3C) + { Opcode = Opcode.VPMAXSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 61(0x3D) + { Opcode = Opcode.VPMAXSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 62(0x3E) + { Opcode = Opcode.VPMAXUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 63(0x3F) + { Opcode = Opcode.VPMAXUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMAXUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 64(0x40) + { Opcode = Opcode.VPMULLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMULLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 65(0x41) + { Opcode = Opcode.VPHMINPOSUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 66(0x42) + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + |] + [| // index 69(0x45) + { Opcode = Opcode.VPSRLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 70(0x46) + { Opcode = Opcode.VPSRAVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRAVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 71(0x47) + { Opcode = Opcode.VPSLLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSLLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSLLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSLLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| NoOpr |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1" |] + OpEn = OpEn.A } + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "SIBMEM"; Unknown "TMM1" |] + OpEn = OpEn.A } + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPBUSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPBUSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 81(0x51) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPBUSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPBUSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 82(0x52) + { Opcode = Opcode.VPDPWSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPWSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 83(0x53) + { Opcode = Opcode.VPDPWSSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPWSSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 84(0x54) + |] + [| // index 85(0x55) + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 89(0x59) + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 90(0x5A) + { Opcode = Opcode.VBROADCASTI128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + OpEn = OpEn.A } + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + |] + [| // index 97(0x61) + |] + [| // index 98(0x62) + |] + [| // index 99(0x63) + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + |] + [| // index 113(0x71) + |] + [| // index 114(0x72) + { Opcode = Opcode.VCVTNEPS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTNEPS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 115(0x73) + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + |] + [| // index 118(0x76) + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 121(0x79) + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + |] + [| // index 127(0x7F) + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + { Opcode = Opcode.VPMASKMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPMASKMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPMASKMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VPMASKMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + OpEn = OpEn.RVM } + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + { Opcode = Opcode.VPMASKMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.MVR } + { Opcode = Opcode.VPMASKMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + OpEn = OpEn.MVR } + { Opcode = Opcode.VPMASKMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.MVR } + { Opcode = Opcode.VPMASKMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + OpEn = OpEn.MVR } + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + { Opcode = Opcode.VPGATHERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VPGATHERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VPGATHERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 145(0x91) + { Opcode = Opcode.VPGATHERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VPGATHERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VPGATHERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 146(0x92) + { Opcode = Opcode.VGATHERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VGATHERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VGATHERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 147(0x93) + { Opcode = Opcode.VGATHERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VGATHERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] + OpEn = OpEn.RMV } + { Opcode = Opcode.VGATHERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + { Opcode = Opcode.VFMADDSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 151(0x97) + { Opcode = Opcode.VFMSUBADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 152(0x98) + { Opcode = Opcode.VFMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 153(0x99) + { Opcode = Opcode.VFMADD132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 154(0x9A) + { Opcode = Opcode.VFMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 155(0x9B) + { Opcode = Opcode.VFMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 156(0x9C) + { Opcode = Opcode.VFNMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 157(0x9D) + { Opcode = Opcode.VFNMADD132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 158(0x9E) + { Opcode = Opcode.VFNMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 159(0x9F) + { Opcode = Opcode.VFNMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + { Opcode = Opcode.VFMADDSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 167(0xA7) + { Opcode = Opcode.VFMSUBADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 168(0xA8) + { Opcode = Opcode.VFMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 169(0xA9) + { Opcode = Opcode.VFMADD213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 170(0xAA) + { Opcode = Opcode.VFMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 171(0xAB) + { Opcode = Opcode.VFMSUB213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 172(0xAC) + { Opcode = Opcode.VFNMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 173(0xAD) + { Opcode = Opcode.VFNMADD213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 174(0xAE) + { Opcode = Opcode.VFNMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 175(0xAF) + { Opcode = Opcode.VFNMSUB213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 176(0xB0) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + |] + [| // index 177(0xB1) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Mem Sz16 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Mem Sz16 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Mem Sz16 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Mem Sz16 |] + OpEn = OpEn.A } + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + { Opcode = Opcode.VPMADD52LUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMADD52LUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 181(0xB5) + { Opcode = Opcode.VPMADD52HUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMADD52HUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 182(0xB6) + { Opcode = Opcode.VFMADDSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADDSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 183(0xB7) + { Opcode = Opcode.VFMSUBADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUBADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 184(0xB8) + { Opcode = Opcode.VFMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 185(0xB9) + { Opcode = Opcode.VFMADD231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMADD231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 186(0xBA) + { Opcode = Opcode.VFMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 187(0xBB) + { Opcode = Opcode.VFMSUB231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFMSUB231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 188(0xBC) + { Opcode = Opcode.VFNMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 189(0xBD) + { Opcode = Opcode.VFNMADD231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMADD231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 190(0xBE) + { Opcode = Opcode.VFNMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 191(0xBF) + { Opcode = Opcode.VFNMSUB231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFNMSUB231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 204(0xCC) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 205(0xCD) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Reg Sz256 |] + OpEn = OpEn.A } + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + { Opcode = Opcode.VGF2P8MULB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VGF2P8MULB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 211(0xD3) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + |] + [| // index 219(0xDB) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.RM } + |] + [| // index 220(0xDC) + { Opcode = Opcode.VAESENC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VAESENC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 221(0xDD) + { Opcode = Opcode.VAESENCLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VAESENCLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 222(0xDE) + { Opcode = Opcode.VAESDEC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VAESDEC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 223(0xDF) + { Opcode = Opcode.VAESDECLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VAESDECLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + |] + [| // index 224(0xE0) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 225(0xE1) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 226(0xE2) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 227(0xE3) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 228(0xE4) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 229(0xE5) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 230(0xE6) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 231(0xE7) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 232(0xE8) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 233(0xE9) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 234(0xEA) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 235(0xEB) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 236(0xEC) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 237(0xED) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 238(0xEE) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 239(0xEF) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 240(0xF0) + |] + [| // index 241(0xF1) + |] + [| // index 242(0xF2) + { Opcode = Opcode.ANDN + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.ANDN + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + OpEn = OpEn.RVM } + |] + [| // index 243(0xF3) + { Opcode = Opcode.BLSI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.VM } + { Opcode = Opcode.BLSI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.VM } + { Opcode = Opcode.BLSMSK + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.VM } + { Opcode = Opcode.BLSMSK + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.VM } + { Opcode = Opcode.BLSR + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz32; RM Sz32 |] + OpEn = OpEn.VM } + { Opcode = Opcode.BLSR + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz64; RM Sz64 |] + OpEn = OpEn.VM } + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + { Opcode = Opcode.BZHI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.BZHI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.PDEP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.PDEP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.PEXT + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.PEXT + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + OpEn = OpEn.RVM } + |] + [| // index 246(0xF6) + { Opcode = Opcode.MULX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.MULX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + OpEn = OpEn.RVM } + |] + [| // index 247(0xF7) + { Opcode = Opcode.BEXTR + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.BEXTR + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SARX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SHLX + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SHRX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SARX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SHLX + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + OpEn = OpEn.RMV } + { Opcode = Opcode.SHRX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + OpEn = OpEn.RMV } + |] + [| // index 248(0xF8) + |] + [| // index 249(0xF9) + |] + [| // index 250(0xFA) + |] + [| // index 251(0xFB) + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + +let (vexThree3A: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.VPERMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 1(0x01) + { Opcode = Opcode.VPERMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 2(0x02) + { Opcode = Opcode.VPBLENDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VPBLENDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 3(0x03) + |] + [| // index 4(0x04) + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 5(0x05) + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 6(0x06) + { Opcode = Opcode.VPERM2F128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + { Opcode = Opcode.VROUNDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.VROUNDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 9(0x09) + { Opcode = Opcode.VROUNDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.VROUNDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 10(0x0A) + { Opcode = Opcode.VROUNDSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 11(0x0B) + { Opcode = Opcode.VROUNDSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 12(0x0C) + { Opcode = Opcode.VBLENDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VBLENDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 13(0x0D) + { Opcode = Opcode.VBLENDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VBLENDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 14(0x0E) + { Opcode = Opcode.VPBLENDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VPBLENDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 15(0x0F) + { Opcode = Opcode.VPALIGNR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPALIGNR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 16(0x10) + |] + [| // index 17(0x11) + |] + [| // index 18(0x12) + |] + [| // index 19(0x13) + |] + [| // index 20(0x14) + { Opcode = Opcode.VPEXTRB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 21(0x15) + { Opcode = Opcode.VPEXTRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 22(0x16) + { Opcode = Opcode.VPEXTRD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXTRQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 23(0x17) + { Opcode = Opcode.VEXTRACTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 24(0x18) + { Opcode = Opcode.VINSERTF128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 25(0x19) + { Opcode = Opcode.VEXTRACTF128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 26(0x1A) + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + |] + [| // index 29(0x1D) + { Opcode = Opcode.VCVTPS2PH + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2PH + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 30(0x1E) + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + { Opcode = Opcode.VPINSRB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 33(0x21) + { Opcode = Opcode.VINSERTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 34(0x22) + { Opcode = Opcode.VPINSRD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPINSRQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 35(0x23) + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + |] + [| // index 41(0x29) + |] + [| // index 42(0x2A) + |] + [| // index 43(0x2B) + |] + [| // index 44(0x2C) + |] + [| // index 45(0x2D) + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + |] + [| // index 48(0x30) + { Opcode = Opcode.KSHIFTRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + { Opcode = Opcode.KSHIFTRB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + |] + [| // index 49(0x31) + { Opcode = Opcode.KSHIFTRQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + { Opcode = Opcode.KSHIFTRD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + |] + [| // index 50(0x32) + { Opcode = Opcode.KSHIFTLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + { Opcode = Opcode.KSHIFTLB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + |] + [| // index 51(0x33) + { Opcode = Opcode.KSHIFTLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + { Opcode = Opcode.KSHIFTLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + OpEn = OpEn.RRI } + |] + [| // index 52(0x34) + |] + [| // index 53(0x35) + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + |] + [| // index 56(0x38) + { Opcode = Opcode.VINSERTI128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 57(0x39) + { Opcode = Opcode.VEXTRACTI128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 58(0x3A) + |] + [| // index 59(0x3B) + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + |] + [| // index 64(0x40) + { Opcode = Opcode.VDPPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VDPPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 65(0x41) + { Opcode = Opcode.VDPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 66(0x42) + { Opcode = Opcode.VMPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RVMI } + { Opcode = Opcode.VMPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + { Opcode = Opcode.VPCLMULQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCLMULQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + { Opcode = Opcode.VPERM2I128 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.RVMI } + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + { Opcode = Opcode.VBLENDVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RVMR } + { Opcode = Opcode.VBLENDVPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + OpEn = OpEn.RVMR } + |] + [| // index 75(0x4B) + { Opcode = Opcode.VBLENDVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RVMR } + { Opcode = Opcode.VBLENDVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + OpEn = OpEn.RVMR } + |] + [| // index 76(0x4C) + { Opcode = Opcode.VPBLENDVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + OpEn = OpEn.RVMR } + { Opcode = Opcode.VPBLENDVB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + OpEn = OpEn.RVMR } + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + |] + [| // index 81(0x51) + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + |] + [| // index 85(0x55) + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + |] + [| // index 89(0x59) + |] + [| // index 90(0x5A) + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + { Opcode = Opcode.VPCMPESTRM + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 97(0x61) + { Opcode = Opcode.VPCMPESTRI + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 98(0x62) + { Opcode = Opcode.VPCMPISTRM + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 99(0x63) + { Opcode = Opcode.VPCMPISTRI + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RM } + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + |] + [| // index 113(0x71) + |] + [| // index 114(0x72) + |] + [| // index 115(0x73) + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + |] + [| // index 118(0x76) + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + |] + [| // index 127(0x7F) + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + |] + [| // index 153(0x99) + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + { Opcode = Opcode.VGF2P8AFFINEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VGF2P8AFFINEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 207(0xCF) + { Opcode = Opcode.VGF2P8AFFINEINVQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VGF2P8AFFINEINVQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + |] + [| // index 211(0xD3) + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + |] + [| // index 219(0xDB) + |] + [| // index 220(0xDC) + |] + [| // index 221(0xDD) + |] + [| // index 222(0xDE) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 223(0xDF) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 224(0xE0) + |] + [| // index 225(0xE1) + |] + [| // index 226(0xE2) + |] + [| // index 227(0xE3) + |] + [| // index 228(0xE4) + |] + [| // index 229(0xE5) + |] + [| // index 230(0xE6) + |] + [| // index 231(0xE7) + |] + [| // index 232(0xE8) + |] + [| // index 233(0xE9) + |] + [| // index 234(0xEA) + |] + [| // index 235(0xEB) + |] + [| // index 236(0xEC) + |] + [| // index 237(0xED) + |] + [| // index 238(0xEE) + |] + [| // index 239(0xEF) + |] + [| // index 240(0xF0) + { Opcode = Opcode.RORX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] + OpEn = OpEn.RMI } + { Opcode = Opcode.RORX + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] + OpEn = OpEn.RMI } + |] + [| // index 241(0xF1) + |] + [| // index 242(0xF2) + |] + [| // index 243(0xF3) + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + |] + [| // index 246(0xF6) + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + |] + [| // index 249(0xF9) + |] + [| // index 250(0xFA) + |] + [| // index 251(0xFB) + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + +let (evexTwo: InstructionCore[][]) = + [| + [| // index 0(0x00) + |] + [| // index 1(0x01) + |] + [| // index 2(0x02) + |] + [| // index 3(0x03) + |] + [| // index 4(0x04) + |] + [| // index 5(0x05) + |] + [| // index 6(0x06) + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + |] + [| // index 9(0x09) + |] + [| // index 10(0x0A) + |] + [| // index 11(0x0B) + |] + [| // index 12(0x0C) + |] + [| // index 13(0x0D) + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz64 |] + OpEn = OpEn.F } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Mem Sz32 |] + OpEn = OpEn.F } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 17(0x11) + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M64{K1}"; Reg Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M32{K1}"; Reg Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVUPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + |] + [| // index 18(0x12) + { Opcode = Opcode.VMOVDDUP + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVDDUP + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVDDUP + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVHLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMOVLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVSLDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSLDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSLDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 19(0x13) + { Opcode = Opcode.VMOVLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.E } + |] + [| // index 20(0x14) + { Opcode = Opcode.VUNPCKLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKLPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKLPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 21(0x15) + { Opcode = Opcode.VUNPCKHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VUNPCKHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 22(0x16) + { Opcode = Opcode.VMOVHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVLHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.RVM } + { Opcode = Opcode.VMOVSHDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSHDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVSHDUP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 23(0x17) + { Opcode = Opcode.VMOVHPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.E } + { Opcode = Opcode.VMOVHPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Mem Sz64; Reg Sz128 |] + OpEn = OpEn.E } + |] + [| // index 24(0x18) + |] + [| // index 25(0x19) + |] + [| // index 26(0x1A) + |] + [| // index 27(0x1B) + |] + [| // index 28(0x1C) + |] + [| // index 29(0x1D) + |] + [| // index 30(0x1E) + |] + [| // index 31(0x1F) + |] + [| // index 32(0x20) + |] + [| // index 33(0x21) + |] + [| // index 34(0x22) + |] + [| // index 35(0x23) + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + |] + [| // index 38(0x26) + |] + [| // index 39(0x27) + |] + [| // index 40(0x28) + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 41(0x29) + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVAPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVAPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + |] + [| // index 42(0x2A) + { Opcode = Opcode.VCVTSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCVTSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + OpEn = OpEn.C } + { Opcode = Opcode.VCVTSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] + OpEn = OpEn.C } + { Opcode = Opcode.VCVTSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + OpEn = OpEn.C } + |] + [| // index 43(0x2B) + { Opcode = Opcode.VMOVNTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M512"; Reg Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M512"; Reg Sz512 |] + OpEn = OpEn.B } + |] + [| // index 44(0x2C) + { Opcode = Opcode.VCVTTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 45(0x2D) + { Opcode = Opcode.VCVTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSD2SI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSS2SI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 46(0x2E) + { Opcode = Opcode.VUCOMISD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VUCOMISS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 47(0x2F) + { Opcode = Opcode.VCOMISD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCOMISS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 48(0x30) + |] + [| // index 49(0x31) + |] + [| // index 50(0x32) + |] + [| // index 51(0x33) + |] + [| // index 52(0x34) + |] + [| // index 53(0x35) + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + |] + [| // index 56(0x38) + |] + [| // index 57(0x39) + |] + [| // index 58(0x3A) + |] + [| // index 59(0x3B) + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + |] + [| // index 63(0x3F) + |] + [| // index 64(0x40) + |] + [| // index 65(0x41) + |] + [| // index 66(0x42) + |] + [| // index 67(0x43) + |] + [| // index 68(0x44) + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + |] + [| // index 81(0x51) + { Opcode = Opcode.VSQRTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VSQRTSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSQRTSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + { Opcode = Opcode.VANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 85(0x55) + { Opcode = Opcode.VANDNPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDNPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDNPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDNPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDNPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VANDNPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 86(0x56) + { Opcode = Opcode.VORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 87(0x57) + { Opcode = Opcode.VXORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VXORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VXORPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VXORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VXORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VXORPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 88(0x58) + { Opcode = Opcode.VADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VADDSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 89(0x59) + { Opcode = Opcode.VMULPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMULSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 90(0x5A) + { Opcode = Opcode.VCVTPD2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPD2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPD2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2PD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2PD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2PD + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTSD2SS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCVTSS2SD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 91(0x5B) + { Opcode = Opcode.VCVTDQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTDQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTDQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPS2DQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPS2DQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPS2DQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTQQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTQQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTQQ2PS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 92(0x5C) + { Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSUBSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 93(0x5D) + { Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMINSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 94(0x5E) + { Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VDIVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 95(0x5F) + { Opcode = Opcode.VMAXPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMAXSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 96(0x60) + { Opcode = Opcode.VPUNPCKLBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKLBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKLBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 97(0x61) + { Opcode = Opcode.VPUNPCKLWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKLWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKLWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 98(0x62) + { Opcode = Opcode.VPUNPCKLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 99(0x63) + { Opcode = Opcode.VPACKSSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKSSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKSSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 100(0x64) + { Opcode = Opcode.VPCMPGTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPGTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPGTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 101(0x65) + { Opcode = Opcode.VPCMPGTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPGTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPGTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 102(0x66) + { Opcode = Opcode.VPCMPGTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPGTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPGTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 103(0x67) + { Opcode = Opcode.VPACKUSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKUSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKUSWB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 104(0x68) + { Opcode = Opcode.VPUNPCKHBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKHBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKHBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 105(0x69) + { Opcode = Opcode.VPUNPCKHWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKHWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPUNPCKHWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 106(0x6A) + { Opcode = Opcode.VPUNPCKHDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKHDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKHDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 107(0x6B) + { Opcode = Opcode.VPACKSSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPACKSSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPACKSSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 108(0x6C) + { Opcode = Opcode.VPUNPCKLQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKLQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKLQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 109(0x6D) + { Opcode = Opcode.VPUNPCKHQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKHQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPUNPCKHQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 110(0x6E) + { Opcode = Opcode.VMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R32/M32" |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "R64/M64" |] + OpEn = OpEn.C } + |] + [| // index 111(0x6F) + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 112(0x70) + { Opcode = Opcode.VPSHUFD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFHW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFHW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFHW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFLW + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFLW + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHUFLW + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 113(0x71) + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.E } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.E } + |] + [| // index 114(0x72) + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp4 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPROLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp0 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 115(0x73) + { Opcode = Opcode.VPSLLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp7 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp3 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.F } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.F } + |] + [| // index 116(0x74) + { Opcode = Opcode.VPCMPEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 117(0x75) + { Opcode = Opcode.VPCMPEQW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPEQW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPCMPEQW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 118(0x76) + { Opcode = Opcode.VPCMPEQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPEQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPEQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + { Opcode = Opcode.VCVTTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSD2USI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSD2USI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSS2USI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTSS2USI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 121(0x79) + { Opcode = Opcode.VCVTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UDQ + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2UQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSD2USI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSD2USI + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSS2USI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz32; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTSS2USI + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz64; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 122(0x7A) + { Opcode = Opcode.VCVTTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUDQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUQQ2PS + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 123(0x7B) + { Opcode = Opcode.VCVTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPD2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTPS2QQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUSI2SD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTUSI2SS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + OpEn = OpEn.A } + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + { Opcode = Opcode.VMOVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32/M32"; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64/M64"; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 127(0x7F) + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQA32 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQA64 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU8 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU16 + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU32 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VMOVDQU64 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.D } + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + |] + [| // index 153(0x99) + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + { Opcode = Opcode.VCMPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VCMPSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + { Opcode = Opcode.VPINSRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 197(0xC5) + { Opcode = Opcode.VPEXTRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 198(0xC6) + { Opcode = Opcode.VSHUFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSHUFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSHUFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSHUFPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSHUFPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VSHUFPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 210(0xD2) + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 211(0xD3) + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 212(0xD4) + { Opcode = Opcode.VPADDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPADDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPADDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 213(0xD5) + { Opcode = Opcode.VPMULLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 214(0xD6) + { Opcode = Opcode.VMOVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.D } + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + { Opcode = Opcode.VPSUBUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 217(0xD9) + { Opcode = Opcode.VPSUBUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 218(0xDA) + { Opcode = Opcode.VPMINUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 219(0xDB) + { Opcode = Opcode.VPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 220(0xDC) + { Opcode = Opcode.VPADDUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDUSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 221(0xDD) + { Opcode = Opcode.VPADDUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDUSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 222(0xDE) + { Opcode = Opcode.VPMAXUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 223(0xDF) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 224(0xE0) + { Opcode = Opcode.VPAVGB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPAVGB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPAVGB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 225(0xE1) + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 226(0xE2) + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSRAQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 227(0xE3) + { Opcode = Opcode.VPAVGW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPAVGW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPAVGW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 228(0xE4) + { Opcode = Opcode.VPMULHUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 229(0xE5) + { Opcode = Opcode.VPMULHW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 230(0xE6) + { Opcode = Opcode.VCVTDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTDQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPD2DQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPD2DQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPD2DQ + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPD2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPD2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTTPD2DQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTQQ2PD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 231(0xE7) + { Opcode = Opcode.VMOVNTDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128"; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256"; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M512"; Reg Sz512 |] + OpEn = OpEn.B } + |] + [| // index 232(0xE8) + { Opcode = Opcode.VPSUBSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 233(0xE9) + { Opcode = Opcode.VPSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 234(0xEA) + { Opcode = Opcode.VPMINSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 235(0xEB) + { Opcode = Opcode.VPORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 236(0xEC) + { Opcode = Opcode.VPADDSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 237(0xED) + { Opcode = Opcode.VPADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 238(0xEE) + { Opcode = Opcode.VPMAXSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 239(0xEF) + { Opcode = Opcode.VPXORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPXORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPXORD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPXORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPXORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPXORQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 240(0xF0) + |] + [| // index 241(0xF1) + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 242(0xF2) + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 243(0xF3) + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + OpEn = OpEn.G } + { Opcode = Opcode.VPSLLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + OpEn = OpEn.G } + |] + [| // index 244(0xF4) + { Opcode = Opcode.VPMULUDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULUDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULUDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 245(0xF5) + { Opcode = Opcode.VPMADDWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMADDWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMADDWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 246(0xF6) + { Opcode = Opcode.VPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + { Opcode = Opcode.VPSUBB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 249(0xF9) + { Opcode = Opcode.VPSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 250(0xFA) + { Opcode = Opcode.VPSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPSUBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 251(0xFB) + { Opcode = Opcode.VPSUBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSUBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 252(0xFC) + { Opcode = Opcode.VPADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 253(0xFD) + { Opcode = Opcode.VPADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPADDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 254(0xFE) + { Opcode = Opcode.VPADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPADDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 255(0xFF) + |] + |] + +let (evexThree38: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.VPSHUFB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSHUFB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSHUFB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 1(0x01) + |] + [| // index 2(0x02) + |] + [| // index 3(0x03) + |] + [| // index 4(0x04) + { Opcode = Opcode.VPMADDUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMADDUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMADDUBSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 5(0x05) + |] + [| // index 6(0x06) + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + |] + [| // index 9(0x09) + |] + [| // index 10(0x0A) + |] + [| // index 11(0x0B) + { Opcode = Opcode.VPMULHRSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHRSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULHRSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 12(0x0C) + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 13(0x0D) + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + |] + [| // index 16(0x10) + { Opcode = Opcode.VPMOVUSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 17(0x11) + { Opcode = Opcode.VPMOVUSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSRAVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRAVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSRAVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 18(0x12) + { Opcode = Opcode.VPMOVUSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSLLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSLLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSLLVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 19(0x13) + { Opcode = Opcode.VCVTPH2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPH2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPH2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVUSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 20(0x14) + { Opcode = Opcode.VPMOVUSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPRORVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPRORVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPRORVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPRORVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPRORVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPRORVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 21(0x15) + { Opcode = Opcode.VPMOVUSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVUSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPROLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPROLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPROLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPROLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPROLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPROLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 22(0x16) + { Opcode = Opcode.VPERMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 23(0x17) + |] + [| // index 24(0x18) + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VBROADCASTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 25(0x19) + { Opcode = Opcode.VBROADCASTSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VBROADCASTSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 26(0x1A) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.D } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M128" |] + OpEn = OpEn.D } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M128" |] + OpEn = OpEn.C } + |] + [| // index 27(0x1B) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M256" |] + OpEn = OpEn.E } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M256" |] + OpEn = OpEn.D } + |] + [| // index 28(0x1C) + { Opcode = Opcode.VPABSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPABSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPABSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 29(0x1D) + { Opcode = Opcode.VPABSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPABSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPABSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 30(0x1E) + { Opcode = Opcode.VPABSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPABSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPABSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 31(0x1F) + { Opcode = Opcode.VPABSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPABSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPABSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 32(0x20) + { Opcode = Opcode.VPMOVSXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 33(0x21) + { Opcode = Opcode.VPMOVSXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 34(0x22) + { Opcode = Opcode.VPMOVSXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVSXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVSXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 35(0x23) + { Opcode = Opcode.VPMOVSXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 36(0x24) + { Opcode = Opcode.VPMOVSXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 37(0x25) + { Opcode = Opcode.VPMOVSXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVSQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 38(0x26) + { Opcode = Opcode.VPTESTMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTESTNMW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 39(0x27) + { Opcode = Opcode.VPTESTMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPTESTNMQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 40(0x28) + { Opcode = Opcode.VPMULDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVM2B + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2B + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2B + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2W + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2W + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2W + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + |] + [| // index 41(0x29) + { Opcode = Opcode.VPCMPEQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPEQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPEQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVB2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVB2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVB2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz512 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVW2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVW2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVW2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz512 |] + OpEn = OpEn.RM } + |] + [| // index 42(0x2A) + { Opcode = Opcode.VMOVNTDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.B } + { Opcode = Opcode.VMOVNTDQA + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M512" |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTMB2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPBROADCASTMB2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPBROADCASTMB2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + |] + [| // index 43(0x2B) + { Opcode = Opcode.VPACKUSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKUSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPACKUSDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 44(0x2C) + { Opcode = Opcode.VSCALEFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 45(0x2D) + { Opcode = Opcode.VSCALEFSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCALEFSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + |] + [| // index 48(0x30) + { Opcode = Opcode.VPMOVZXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVWB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 49(0x31) + { Opcode = Opcode.VPMOVZXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVZXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVZXBD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVDB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 50(0x32) + { Opcode = Opcode.VPMOVZXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVZXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVZXBQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMOVQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQB + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 51(0x33) + { Opcode = Opcode.VPMOVZXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXWD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVDW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 52(0x34) + { Opcode = Opcode.VPMOVZXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVZXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVZXWQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQW + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 53(0x35) + { Opcode = Opcode.VPMOVZXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVZXDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMOVQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMOVQD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 54(0x36) + { Opcode = Opcode.VPERMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 55(0x37) + { Opcode = Opcode.VPCMPGTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPGTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCMPGTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 56(0x38) + { Opcode = Opcode.VPMINSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVM2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVM2Q + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + |] + [| // index 57(0x39) + { Opcode = Opcode.VPMINSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMOVD2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVD2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVD2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz512 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVQ2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz128 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVQ2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz256 |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPMOVQ2M + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1"; Reg Sz512 |] + OpEn = OpEn.RM } + |] + [| // index 58(0x3A) + { Opcode = Opcode.VPMINUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPBROADCASTMW2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPBROADCASTMW2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "K1" |] + OpEn = OpEn.RM } + { Opcode = Opcode.VPBROADCASTMW2D + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "K1" |] + OpEn = OpEn.RM } + |] + [| // index 59(0x3B) + { Opcode = Opcode.VPMINUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMINUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 60(0x3C) + { Opcode = Opcode.VPMAXSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 61(0x3D) + { Opcode = Opcode.VPMAXSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMAXSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMAXSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMAXSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMAXSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPMAXSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.D } + |] + [| // index 62(0x3E) + { Opcode = Opcode.VPMAXUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 63(0x3F) + { Opcode = Opcode.VPMAXUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMAXUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 64(0x40) + { Opcode = Opcode.VPMULLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPMULLQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 65(0x41) + |] + [| // index 66(0x42) + { Opcode = Opcode.VGETEXPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 67(0x43) + { Opcode = Opcode.VGETEXPSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETEXPSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 68(0x44) + { Opcode = Opcode.VPLZCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPLZCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPLZCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPLZCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPLZCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPLZCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 69(0x45) + { Opcode = Opcode.VPSRLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 70(0x46) + { Opcode = Opcode.VPSRAVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSRAVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 71(0x47) + { Opcode = Opcode.VPSLLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPSLLVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + { Opcode = Opcode.VRCP14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 77(0x4D) + { Opcode = Opcode.VRCP14SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP14SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 78(0x4E) + { Opcode = Opcode.VRSQRT14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 79(0x4F) + { Opcode = Opcode.VRSQRT14SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT14SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 80(0x50) + { Opcode = Opcode.VPDPBUSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPBUSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPBUSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 81(0x51) + { Opcode = Opcode.VPDPBUSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPBUSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPBUSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 82(0x52) + { Opcode = Opcode.VDPBF16PS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VDPBF16PS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VDPBF16PS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPDPWSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPWSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPWSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VP4DPWSSD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 83(0x53) + { Opcode = Opcode.VPDPWSSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPWSSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPDPWSSDS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VP4DPWSSDS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 84(0x54) + { Opcode = Opcode.VPOPCNTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPOPCNTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPOPCNTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPOPCNTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPOPCNTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPOPCNTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 85(0x55) + { Opcode = Opcode.VPOPCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOPCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOPCNTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOPCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOPCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPOPCNTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 86(0x56) + |] + [| // index 87(0x57) + |] + [| // index 88(0x58) + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 89(0x59) + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VBROADCASTI32X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VBROADCASTI32X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VBROADCASTI32X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.C } + |] + [| // index 90(0x5A) + { Opcode = Opcode.VBROADCASTI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.D } + { Opcode = Opcode.VBROADCASTI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M128" |] + OpEn = OpEn.D } + { Opcode = Opcode.VBROADCASTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M128" |] + OpEn = OpEn.C } + { Opcode = Opcode.VBROADCASTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M128" |] + OpEn = OpEn.C } + |] + [| // index 91(0x5B) + { Opcode = Opcode.VBROADCASTI32X8 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M256" |] + OpEn = OpEn.E } + { Opcode = Opcode.VBROADCASTI64X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M256" |] + OpEn = OpEn.D } + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + |] + [| // index 97(0x61) + |] + [| // index 98(0x62) + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "M256" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "M512" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512 |] + OpEn = OpEn.B } + |] + [| // index 99(0x63) + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M512{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M128{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M256{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "M512{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512 |] + OpEn = OpEn.B } + |] + [| // index 100(0x64) + { Opcode = Opcode.VPBLENDMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 101(0x65) + { Opcode = Opcode.VBLENDMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBLENDMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBLENDMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBLENDMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBLENDMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VBLENDMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 102(0x66) + { Opcode = Opcode.VPBLENDMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBLENDMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 103(0x67) + |] + [| // index 104(0x68) + { Opcode = Opcode.VP2INTERSECTD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VP2INTERSECTD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VP2INTERSECTD + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VP2INTERSECTQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VP2INTERSECTQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VP2INTERSECTQ + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + { Opcode = Opcode.VPSHLDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHLDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHLDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 113(0x71) + { Opcode = Opcode.VPSHLDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 114(0x72) + { Opcode = Opcode.VCVTNE2PS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTNE2PS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTNE2PS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCVTNEPS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTNEPS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTNEPS2BF16 + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHRDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHRDVW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 115(0x73) + { Opcode = Opcode.VPSHRDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDVQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + { Opcode = Opcode.VPERMI2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMI2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMI2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMI2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMI2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMI2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 118(0x76) + { Opcode = Opcode.VPERMI2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 119(0x77) + { Opcode = Opcode.VPERMI2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMI2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 120(0x78) + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 121(0x79) + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 122(0x7A) + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "REG" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "REG" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "REG" |] + OpEn = OpEn.A } + |] + [| // index 123(0x7B) + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Unknown "REG" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Unknown "REG" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Unknown "REG" |] + OpEn = OpEn.A } + |] + [| // index 124(0x7C) + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz32 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz64 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPBROADCASTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz64 |] + OpEn = OpEn.A } + |] + [| // index 125(0x7D) + { Opcode = Opcode.VPERMT2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMT2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMT2B + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMT2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMT2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMT2W + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 126(0x7E) + { Opcode = Opcode.VPERMT2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2D + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2Q + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 127(0x7F) + { Opcode = Opcode.VPERMT2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMT2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + { Opcode = Opcode.VPMULTISHIFTQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMULTISHIFTQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPMULTISHIFTQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + { Opcode = Opcode.VEXPANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXPANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXPANDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXPANDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXPANDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXPANDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 137(0x89) + { Opcode = Opcode.VPEXPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPEXPANDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 138(0x8A) + { Opcode = Opcode.VCOMPRESSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMPRESSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMPRESSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMPRESSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMPRESSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VCOMPRESSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 139(0x8B) + { Opcode = Opcode.VPCOMPRESSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCOMPRESSQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz512; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + { Opcode = Opcode.VPERMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPERMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPERMW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + { Opcode = Opcode.VPSHUFBITQMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFBITQMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHUFBITQMB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 144(0x90) + { Opcode = Opcode.VPGATHERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM32Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM32Z" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM32Y" |] + OpEn = OpEn.A } + |] + [| // index 145(0x91) + { Opcode = Opcode.VPGATHERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM64Z" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM64Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VPGATHERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM64Z" |] + OpEn = OpEn.A } + |] + [| // index 146(0x92) + { Opcode = Opcode.VGATHERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM32Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM32Z" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM32X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM32Y" |] + OpEn = OpEn.A } + |] + [| // index 147(0x93) + { Opcode = Opcode.VGATHERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM64Z" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Unknown "VM64X" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz256; Unknown "VM64Y" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz512; Unknown "VM64Z" |] + OpEn = OpEn.A } + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + { Opcode = Opcode.VFMADDSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 151(0x97) + { Opcode = Opcode.VFMSUBADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 152(0x98) + { Opcode = Opcode.VFMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 153(0x99) + { Opcode = Opcode.VFMADD132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 154(0x9A) + { Opcode = Opcode.VFMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.V4FMADDPS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 155(0x9B) + { Opcode = Opcode.VFMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.V4FMADDSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 156(0x9C) + { Opcode = Opcode.VFNMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 157(0x9D) + { Opcode = Opcode.VFNMADD132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 158(0x9E) + { Opcode = Opcode.VFNMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 159(0x9F) + { Opcode = Opcode.VFNMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 160(0xA0) + { Opcode = Opcode.VPSCATTERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32X{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Y{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 161(0xA1) + { Opcode = Opcode.VPSCATTERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERQD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSCATTERQQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 162(0xA2) + { Opcode = Opcode.VSCATTERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERDPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERDPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 163(0xA3) + { Opcode = Opcode.VSCATTERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERQPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERQPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.NoModRM + Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] + OpEn = OpEn.A } + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + { Opcode = Opcode.VFMADDSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 167(0xA7) + { Opcode = Opcode.VFMSUBADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 168(0xA8) + { Opcode = Opcode.VFMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 169(0xA9) + { Opcode = Opcode.VFMADD213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 170(0xAA) + { Opcode = Opcode.VFMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.V4FNMADDPS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 171(0xAB) + { Opcode = Opcode.VFMSUB213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.V4FNMADDSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + OpEn = OpEn.A } + |] + [| // index 172(0xAC) + { Opcode = Opcode.VFNMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 173(0xAD) + { Opcode = Opcode.VFNMADD213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 174(0xAE) + { Opcode = Opcode.VFNMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 175(0xAF) + { Opcode = Opcode.VFNMSUB213SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB213SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + { Opcode = Opcode.VPMADD52LUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADD52LUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADD52LUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 181(0xB5) + { Opcode = Opcode.VPMADD52HUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADD52HUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPMADD52HUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 182(0xB6) + { Opcode = Opcode.VFMADDSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADDSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 183(0xB7) + { Opcode = Opcode.VFMSUBADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUBADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 184(0xB8) + { Opcode = Opcode.VFMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 185(0xB9) + { Opcode = Opcode.VFMADD231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMADD231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 186(0xBA) + { Opcode = Opcode.VFMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 187(0xBB) + { Opcode = Opcode.VFMSUB231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFMSUB231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 188(0xBC) + { Opcode = Opcode.VFNMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 189(0xBD) + { Opcode = Opcode.VFNMADD231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMADD231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 190(0xBE) + { Opcode = Opcode.VFNMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.B } + |] + [| // index 191(0xBF) + { Opcode = Opcode.VFNMSUB231SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + { Opcode = Opcode.VFNMSUB231SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.B } + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + { Opcode = Opcode.VPCONFLICTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCONFLICTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCONFLICTD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCONFLICTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCONFLICTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCONFLICTQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + { Opcode = Opcode.VGATHERPF0DPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "VM32Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF0DPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "VM32Y{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF1DPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "VM32Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF1DPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "VM32Y{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF0DPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "VM32Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF0DPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "VM32Y{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF1DPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "VM32Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF1DPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "VM32Y{K1}" |] + OpEn = OpEn.A } + |] + [| // index 199(0xC7) + { Opcode = Opcode.VGATHERPF0QPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF0QPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp1 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF1QPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VGATHERPF1QPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp2 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF0QPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF0QPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp5 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF1QPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + { Opcode = Opcode.VSCATTERPF1QPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRMOp6 + Operands = [| Unknown "VM64Z{K1}" |] + OpEn = OpEn.A } + |] + [| // index 200(0xC8) + { Opcode = Opcode.VEXP2PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VEXP2PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + { Opcode = Opcode.VRCP28PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP28PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 203(0xCB) + { Opcode = Opcode.VRCP28SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRCP28SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 204(0xCC) + { Opcode = Opcode.VRSQRT28PD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT28PS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512 |] + OpEn = OpEn.A } + |] + [| // index 205(0xCD) + { Opcode = Opcode.VRSQRT28SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRSQRT28SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + OpEn = OpEn.A } + |] + [| // index 206(0xCE) + |] + [| // index 207(0xCF) + { Opcode = Opcode.VGF2P8MULB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8MULB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8MULB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + |] + [| // index 211(0xD3) + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + |] + [| // index 219(0xDB) + |] + [| // index 220(0xDC) + { Opcode = Opcode.VAESENC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESENC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESENC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 221(0xDD) + { Opcode = Opcode.VAESENCLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESENCLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESENCLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 222(0xDE) + { Opcode = Opcode.VAESDEC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESDEC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESDEC + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 223(0xDF) + { Opcode = Opcode.VAESDECLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESDECLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.C } + { Opcode = Opcode.VAESDECLAST + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + OpEn = OpEn.C } + |] + [| // index 224(0xE0) + |] + [| // index 225(0xE1) + |] + [| // index 226(0xE2) + |] + [| // index 227(0xE3) + |] + [| // index 228(0xE4) + |] + [| // index 229(0xE5) + |] + [| // index 230(0xE6) + |] + [| // index 231(0xE7) + |] + [| // index 232(0xE8) + |] + [| // index 233(0xE9) + |] + [| // index 234(0xEA) + |] + [| // index 235(0xEB) + |] + [| // index 236(0xEC) + |] + [| // index 237(0xED) + |] + [| // index 238(0xEE) + |] + [| // index 239(0xEF) + |] + [| // index 240(0xF0) + |] + [| // index 241(0xF1) + |] + [| // index 242(0xF2) + |] + [| // index 243(0xF3) + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + |] + [| // index 246(0xF6) + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + |] + [| // index 249(0xF9) + |] + [| // index 250(0xFA) + |] + [| // index 251(0xFB) + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + +let (evexThree3A: InstructionCore[][]) = + [| + [| // index 0(0x00) + { Opcode = Opcode.VPERMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 1(0x01) + { Opcode = Opcode.VPERMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPERMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 2(0x02) + |] + [| // index 3(0x03) + { Opcode = Opcode.VALIGND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VALIGNQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VALIGND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VALIGNQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VALIGND + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VALIGNQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 4(0x04) + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPERMILPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.D } + |] + [| // index 5(0x05) + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VPERMILPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.D } + |] + [| // index 6(0x06) + |] + [| // index 7(0x07) + |] + [| // index 8(0x08) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 9(0x09) + { Opcode = Opcode.VRNDSCALEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 10(0x0A) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRNDSCALESS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 11(0x0B) + { Opcode = Opcode.VRNDSCALESD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 12(0x0C) + |] + [| // index 13(0x0D) + |] + [| // index 14(0x0E) + |] + [| // index 15(0x0F) + { Opcode = Opcode.VPALIGNR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPALIGNR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPALIGNR + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 16(0x10) + |] + [| // index 17(0x11) + |] + [| // index 18(0x12) + |] + [| // index 19(0x13) + |] + [| // index 20(0x14) + { Opcode = Opcode.VPEXTRB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 21(0x15) + { Opcode = Opcode.VPEXTRW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 22(0x16) + { Opcode = Opcode.VPEXTRD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPEXTRQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 23(0x17) + { Opcode = Opcode.VEXTRACTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 24(0x18) + { Opcode = Opcode.VINSERTF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VINSERTF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VINSERTF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VINSERTF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 25(0x19) + { Opcode = Opcode.VEXTRACTF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VEXTRACTF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VEXTRACTF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VEXTRACTF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 26(0x1A) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VINSERTF64X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 27(0x1B) + { Opcode = Opcode.VEXTRACTF32X8 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VEXTRACTF64X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 28(0x1C) + |] + [| // index 29(0x1D) + { Opcode = Opcode.VCVTPS2PH + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2PH + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VCVTPS2PH + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 30(0x1E) + { Opcode = Opcode.VPCMPUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 31(0x1F) + { Opcode = Opcode.VPCMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 32(0x20) + { Opcode = Opcode.VPINSRB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 33(0x21) + { Opcode = Opcode.VINSERTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 34(0x22) + { Opcode = Opcode.VPINSRD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M32"; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPINSRQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 35(0x23) + { Opcode = Opcode.VSHUFF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFF32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFF64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 36(0x24) + |] + [| // index 37(0x25) + { Opcode = Opcode.VPTERNLOGD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTERNLOGD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTERNLOGD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTERNLOGQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTERNLOGQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPTERNLOGQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 38(0x26) + { Opcode = Opcode.VGETMANTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 39(0x27) + { Opcode = Opcode.VGETMANTSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VGETMANTSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 40(0x28) + |] + [| // index 41(0x29) + |] + [| // index 42(0x2A) + |] + [| // index 43(0x2B) + |] + [| // index 44(0x2C) + |] + [| // index 45(0x2D) + |] + [| // index 46(0x2E) + |] + [| // index 47(0x2F) + |] + [| // index 48(0x30) + |] + [| // index 49(0x31) + |] + [| // index 50(0x32) + |] + [| // index 51(0x33) + |] + [| // index 52(0x34) + |] + [| // index 53(0x35) + |] + [| // index 54(0x36) + |] + [| // index 55(0x37) + |] + [| // index 56(0x38) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VINSERTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VINSERTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 57(0x39) + { Opcode = Opcode.VEXTRACTI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VEXTRACTI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VEXTRACTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VEXTRACTI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 58(0x3A) + { Opcode = Opcode.VINSERTI32X8 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VINSERTI64X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 59(0x3B) + { Opcode = Opcode.VEXTRACTI32X8 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.D } + { Opcode = Opcode.VEXTRACTI64X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 60(0x3C) + |] + [| // index 61(0x3D) + |] + [| // index 62(0x3E) + { Opcode = Opcode.VPCMPUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPUW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 63(0x3F) + { Opcode = Opcode.VPCMPB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPCMPW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 64(0x40) + |] + [| // index 65(0x41) + |] + [| // index 66(0x42) + { Opcode = Opcode.VDBPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VDBPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VDBPSADBW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 67(0x43) + { Opcode = Opcode.VSHUFI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFI32X4 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VSHUFI64X2 + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 68(0x44) + { Opcode = Opcode.VPCLMULQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCLMULQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VPCLMULQDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 69(0x45) + |] + [| // index 70(0x46) + |] + [| // index 71(0x47) + |] + [| // index 72(0x48) + |] + [| // index 73(0x49) + |] + [| // index 74(0x4A) + |] + [| // index 75(0x4B) + |] + [| // index 76(0x4C) + |] + [| // index 77(0x4D) + |] + [| // index 78(0x4E) + |] + [| // index 79(0x4F) + |] + [| // index 80(0x50) + { Opcode = Opcode.VRANGEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 81(0x51) + { Opcode = Opcode.VRANGESD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VRANGESS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 82(0x52) + |] + [| // index 83(0x53) + |] + [| // index 84(0x54) + { Opcode = Opcode.VFIXUPIMMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 85(0x55) + { Opcode = Opcode.VFIXUPIMMSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFIXUPIMMSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 86(0x56) + { Opcode = Opcode.VREDUCEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCEPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCEPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 87(0x57) + { Opcode = Opcode.VREDUCESD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Unknown "IMM8/R" |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VREDUCESS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 88(0x58) + |] + [| // index 89(0x59) + |] + [| // index 90(0x5A) + |] + [| // index 91(0x5B) + |] + [| // index 92(0x5C) + |] + [| // index 93(0x5D) + |] + [| // index 94(0x5E) + |] + [| // index 95(0x5F) + |] + [| // index 96(0x60) + |] + [| // index 97(0x61) + |] + [| // index 98(0x62) + |] + [| // index 99(0x63) + |] + [| // index 100(0x64) + |] + [| // index 101(0x65) + |] + [| // index 102(0x66) + { Opcode = Opcode.VFPCLASSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSPS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 103(0x67) + { Opcode = Opcode.VFPCLASSSD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VFPCLASSSS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 104(0x68) + |] + [| // index 105(0x69) + |] + [| // index 106(0x6A) + |] + [| // index 107(0x6B) + |] + [| // index 108(0x6C) + |] + [| // index 109(0x6D) + |] + [| // index 110(0x6E) + |] + [| // index 111(0x6F) + |] + [| // index 112(0x70) + { Opcode = Opcode.VPSHLDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHLDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHLDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 113(0x71) + { Opcode = Opcode.VPSHLDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHLDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 114(0x72) + { Opcode = Opcode.VPSHRDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHRDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.VPSHRDW + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 115(0x73) + { Opcode = Opcode.VPSHRDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.B } + { Opcode = Opcode.VPSHRDQ + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.B } + |] + [| // index 116(0x74) + |] + [| // index 117(0x75) + |] + [| // index 118(0x76) + |] + [| // index 119(0x77) + |] + [| // index 120(0x78) + |] + [| // index 121(0x79) + |] + [| // index 122(0x7A) + |] + [| // index 123(0x7B) + |] + [| // index 124(0x7C) + |] + [| // index 125(0x7D) + |] + [| // index 126(0x7E) + |] + [| // index 127(0x7F) + |] + [| // index 128(0x80) + |] + [| // index 129(0x81) + |] + [| // index 130(0x82) + |] + [| // index 131(0x83) + |] + [| // index 132(0x84) + |] + [| // index 133(0x85) + |] + [| // index 134(0x86) + |] + [| // index 135(0x87) + |] + [| // index 136(0x88) + |] + [| // index 137(0x89) + |] + [| // index 138(0x8A) + |] + [| // index 139(0x8B) + |] + [| // index 140(0x8C) + |] + [| // index 141(0x8D) + |] + [| // index 142(0x8E) + |] + [| // index 143(0x8F) + |] + [| // index 144(0x90) + |] + [| // index 145(0x91) + |] + [| // index 146(0x92) + |] + [| // index 147(0x93) + |] + [| // index 148(0x94) + |] + [| // index 149(0x95) + |] + [| // index 150(0x96) + |] + [| // index 151(0x97) + |] + [| // index 152(0x98) + |] + [| // index 153(0x99) + |] + [| // index 154(0x9A) + |] + [| // index 155(0x9B) + |] + [| // index 156(0x9C) + |] + [| // index 157(0x9D) + |] + [| // index 158(0x9E) + |] + [| // index 159(0x9F) + |] + [| // index 160(0xA0) + |] + [| // index 161(0xA1) + |] + [| // index 162(0xA2) + |] + [| // index 163(0xA3) + |] + [| // index 164(0xA4) + |] + [| // index 165(0xA5) + |] + [| // index 166(0xA6) + |] + [| // index 167(0xA7) + |] + [| // index 168(0xA8) + |] + [| // index 169(0xA9) + |] + [| // index 170(0xAA) + |] + [| // index 171(0xAB) + |] + [| // index 172(0xAC) + |] + [| // index 173(0xAD) + |] + [| // index 174(0xAE) + |] + [| // index 175(0xAF) + |] + [| // index 176(0xB0) + |] + [| // index 177(0xB1) + |] + [| // index 178(0xB2) + |] + [| // index 179(0xB3) + |] + [| // index 180(0xB4) + |] + [| // index 181(0xB5) + |] + [| // index 182(0xB6) + |] + [| // index 183(0xB7) + |] + [| // index 184(0xB8) + |] + [| // index 185(0xB9) + |] + [| // index 186(0xBA) + |] + [| // index 187(0xBB) + |] + [| // index 188(0xBC) + |] + [| // index 189(0xBD) + |] + [| // index 190(0xBE) + |] + [| // index 191(0xBF) + |] + [| // index 192(0xC0) + |] + [| // index 193(0xC1) + |] + [| // index 194(0xC2) + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.A } + { Opcode = Opcode.InvalOP + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + OpEn = OpEn.A } + |] + [| // index 195(0xC3) + |] + [| // index 196(0xC4) + |] + [| // index 197(0xC5) + |] + [| // index 198(0xC6) + |] + [| // index 199(0xC7) + |] + [| // index 200(0xC8) + |] + [| // index 201(0xC9) + |] + [| // index 202(0xCA) + |] + [| // index 203(0xCB) + |] + [| // index 204(0xCC) + |] + [| // index 205(0xCD) + |] + [| // index 206(0xCE) + { Opcode = Opcode.VGF2P8AFFINEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8AFFINEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8AFFINEQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 207(0xCF) + { Opcode = Opcode.VGF2P8AFFINEINVQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8AFFINEINVQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + OpEn = OpEn.C } + { Opcode = Opcode.VGF2P8AFFINEINVQB + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V512 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + OpEn = OpEn.C } + |] + [| // index 208(0xD0) + |] + [| // index 209(0xD1) + |] + [| // index 210(0xD2) + |] + [| // index 211(0xD3) + |] + [| // index 212(0xD4) + |] + [| // index 213(0xD5) + |] + [| // index 214(0xD6) + |] + [| // index 215(0xD7) + |] + [| // index 216(0xD8) + |] + [| // index 217(0xD9) + |] + [| // index 218(0xDA) + |] + [| // index 219(0xDB) + |] + [| // index 220(0xDC) + |] + [| // index 221(0xDD) + |] + [| // index 222(0xDE) + |] + [| // index 223(0xDF) + |] + [| // index 224(0xE0) + |] + [| // index 225(0xE1) + |] + [| // index 226(0xE2) + |] + [| // index 227(0xE3) + |] + [| // index 228(0xE4) + |] + [| // index 229(0xE5) + |] + [| // index 230(0xE6) + |] + [| // index 231(0xE7) + |] + [| // index 232(0xE8) + |] + [| // index 233(0xE9) + |] + [| // index 234(0xEA) + |] + [| // index 235(0xEB) + |] + [| // index 236(0xEC) + |] + [| // index 237(0xED) + |] + [| // index 238(0xEE) + |] + [| // index 239(0xEF) + |] + [| // index 240(0xF0) + |] + [| // index 241(0xF1) + |] + [| // index 242(0xF2) + |] + [| // index 243(0xF3) + |] + [| // index 244(0xF4) + |] + [| // index 245(0xF5) + |] + [| // index 246(0xF6) + |] + [| // index 247(0xF7) + |] + [| // index 248(0xF8) + |] + [| // index 249(0xF9) + |] + [| // index 250(0xFA) + |] + [| // index 251(0xFB) + |] + [| // index 252(0xFC) + |] + [| // index 253(0xFD) + |] + [| // index 254(0xFE) + |] + [| // index 255(0xFF) + |] + |] + diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs new file mode 100644 index 000000000..53a576c79 --- /dev/null +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -0,0 +1,126 @@ +namespace B2R2.FrontEnd.Intel + +type OpcodeClass = + | Normal of OpcodeMap + | VEX of OpcodeMap + | EVEX of OpcodeMap + +and OpcodeMap = + | OneByte + | TwoBytes + | ThreeBytes38 + | ThreeBytes3A + | MAP4 + | MAP5 + | MAP6 + | MAP7 + +type VectorLength = + | None = 0 + | V128 = 1 + | V256 = 2 + | V512 = 3 + +type PrefixType = + | Legacy of PrefixKind + | Mandatory of PrefixKind + +and PrefixKind = + | NP + | P66 + | F3 + | F2 + +type REXPrefixType = + | NOREX = 0 + | WIG = 1 + | W0 = 2 + | W1 = 3 + | REX = 4 + | REXW = 5 + +type OperandType = + | NoOpr + | RM of OprSize + | RMdiff of OprSize * OprSize + | Reg of OprSize + | Mem of OprSize + | Imm of OprSize + | Rel of OprSize + | Unknown of string (* XXX: Temp *) + +and OprSize = + | Sz8 + | Sz16 + | Sz32 + | Sz64 + | Sz128 + | Sz256 + | Sz512 + +//type Operands = +// | NoOperand +// | OneOperand of OperandType +// | TwoOperands of OperandType * OperandType +// | ThreeOperands of OperandType * OperandType * OperandType +// | FourOperands of OperandType * OperandType * OperandType * OperandType + +type ModRMType = + | NoModRM = 0 + | ModRM = 1 (* /r *) + | ModRMOp0 = 2 (* /0 *) + | ModRMOp1 = 3 (* /1 *) + | ModRMOp2 = 4 (* /2 *) + | ModRMOp3 = 5 (* /3 *) + | ModRMOp4 = 6 (* /4 *) + | ModRMOp5 = 7 (* /5 *) + | ModRMOp6 = 8 (* /6 *) + | ModRMOp7 = 9 (* /7 *) + +type OpEn = + | None = 0 + | A = 1 + | B = 2 + | C = 3 + | D = 4 + | E = 5 + | F = 6 + | FD = 7 + | G = 8 + | I = 9 + | II = 10 + | M = 11 + | M1 = 12 + | MC = 13 + | MI = 14 + | MR = 15 + | MRC = 16 + | MRI = 17 + | MVR = 18 + | O = 19 + | OI = 20 + | R = 21 + | RM = 22 + | RM0 = 23 + | RMI = 24 + | RMV = 25 + | RR = 26 + | RRI = 27 + | RVM = 28 + | RVMI = 29 + | RVMR = 30 + | RVR = 31 + | S = 32 + | TD = 33 + | VM = 34 + | ZO = 35 + +/// Core instruction representation used in the generated source code. +type InstructionCore = + { Opcode: Opcode + PrefixType: PrefixType + REXPrefixType: REXPrefixType + VectorLength: VectorLength + ModRM: ModRMType + Operands: OperandType[] + OpEn: OpEn } \ No newline at end of file diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 3a28a7f7a..9a3fd9c8f 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -28,474 +28,11 @@ open System open B2R2 open B2R2.FrontEnd.BinLifter open B2R2.FrontEnd.Intel +open B2R2.FrontEnd.Intel.ParsingFunctions open LanguagePrimitives /// Represents a parser for Intel (x86 or x86-64) instructions. type IntelParser(wordSz, reader) = - let oparsers = - [| OperandParsers.RmGpr() :> OperandParser - OperandParsers.RmSeg() - OperandParsers.GprCtrl() - OperandParsers.GprDbg() - OperandParsers.RMMmx() - OperandParsers.MmMmx() - OperandParsers.BmBnd() - OperandParsers.RmBnd() - OperandParsers.GprRm() - OperandParsers.GprM() - OperandParsers.MGpr() - OperandParsers.SegRm() - OperandParsers.BndBm() - OperandParsers.BndRm() - OperandParsers.CtrlGpr() - OperandParsers.DbgGpr() - OperandParsers.MmxRm() - OperandParsers.MmxMm() - OperandParsers.MxMx() - OperandParsers.GprRMm() - OperandParsers.RegImm8() - OperandParsers.Imm8Reg() - OperandParsers.Imm8() - OperandParsers.Imm16() - OperandParsers.RegImm() - OperandParsers.SImm8() - OperandParsers.Imm() - OperandParsers.Es() - OperandParsers.Cs() - OperandParsers.Ss() - OperandParsers.Ds() - OperandParsers.Fs() - OperandParsers.Gs() - OperandParsers.ALDx() - OperandParsers.EaxDx() - OperandParsers.DxEax() - OperandParsers.DxAL() - OperandParsers.No() - OperandParsers.Eax() - OperandParsers.Ecx() - OperandParsers.Edx() - OperandParsers.Ebx() - OperandParsers.Esp() - OperandParsers.Ebp() - OperandParsers.Esi() - OperandParsers.Edi() - OperandParsers.Rax() - OperandParsers.Rcx() - OperandParsers.Rdx() - OperandParsers.Rbx() - OperandParsers.Rsp() - OperandParsers.Rbp() - OperandParsers.Rsi() - OperandParsers.Rdi() - OperandParsers.RaxRax() - OperandParsers.RaxRcx() - OperandParsers.RaxRdx() - OperandParsers.RaxRbx() - OperandParsers.RaxRsp() - OperandParsers.RaxRbp() - OperandParsers.RaxRsi() - OperandParsers.RaxRdi() - OperandParsers.GprRmImm8() - OperandParsers.GprRmImm() - OperandParsers.Rel8() - OperandParsers.Rel() - OperandParsers.Dir() - OperandParsers.RaxFar() - OperandParsers.FarRax() - OperandParsers.ALImm8() - OperandParsers.CLImm8() - OperandParsers.DLImm8() - OperandParsers.BLImm8() - OperandParsers.AhImm8() - OperandParsers.ChImm8() - OperandParsers.DhImm8() - OperandParsers.BhImm8() - OperandParsers.RaxImm() - OperandParsers.RcxImm() - OperandParsers.RdxImm() - OperandParsers.RbxImm() - OperandParsers.RspImm() - OperandParsers.RbpImm() - OperandParsers.RsiImm() - OperandParsers.RdiImm() - OperandParsers.ImmImm() - OperandParsers.RmImm() - OperandParsers.RmImm8() - OperandParsers.RmSImm8() - OperandParsers.MmxImm8() - OperandParsers.Mem() - OperandParsers.M1() - OperandParsers.RmCL() - OperandParsers.XmmVvXm() - OperandParsers.GprVvRm() - OperandParsers.XmVvXmm() - OperandParsers.Gpr() - OperandParsers.RmXmmImm8() - OperandParsers.XmmRmImm8() - OperandParsers.MmxMmImm8() - OperandParsers.MmxRmImm8() - OperandParsers.GprMmxImm8() - OperandParsers.XmmVvXmImm8() - OperandParsers.XmmVvXmXmm() - OperandParsers.XmRegImm8() - OperandParsers.GprRmVv() - OperandParsers.VvRmImm8() - OperandParsers.RmGprCL() - OperandParsers.XmmXmXmm0() - OperandParsers.XmmXmVv() - OperandParsers.VvRm() - OperandParsers.GprRmImm8Imm8() - OperandParsers.RmImm8Imm8() - OperandParsers.KnVvXm() - OperandParsers.GprKn() - OperandParsers.KnVvXmImm8() - OperandParsers.KnGpr() - OperandParsers.XmmVvXmmXm() - OperandParsers.KnKm() - OperandParsers.MKn() - OperandParsers.KKn() - OperandParsers.KnKmImm8() - OperandParsers.XmmVsXm() - OperandParsers.XmVsXmm() |] - - let szcomputers = - [| InsSizeComputers.Byte() :> InsSizeComputer - InsSizeComputers.Word() - InsSizeComputers.Def() - InsSizeComputers.VecDef() - InsSizeComputers.DV() - InsSizeComputers.D() - InsSizeComputers.MemW() - InsSizeComputers.RegW() - InsSizeComputers.WV() - InsSizeComputers.D64() - InsSizeComputers.PZ() - InsSizeComputers.DDq() - InsSizeComputers.DqDq() - InsSizeComputers.DqdDq() - InsSizeComputers.DqdDqMR() - InsSizeComputers.DqqDq() - InsSizeComputers.DqqDqMR() - InsSizeComputers.XqX() - InsSizeComputers.DqqDqWS() - InsSizeComputers.VyDq() - InsSizeComputers.VyDqMR() - InsSizeComputers.DY() - InsSizeComputers.QDq() - InsSizeComputers.DqqQ() - InsSizeComputers.DqQ() - InsSizeComputers.DqdY() - InsSizeComputers.DqqY() - InsSizeComputers.DqY() - InsSizeComputers.Dq() - InsSizeComputers.DQ() - InsSizeComputers.QQ() - InsSizeComputers.YQ() - InsSizeComputers.YQRM() - InsSizeComputers.DwQ() - InsSizeComputers.DwDq() - InsSizeComputers.DwDqMR() - InsSizeComputers.QD() - InsSizeComputers.Dqd() - InsSizeComputers.XDq() - InsSizeComputers.DqX() - InsSizeComputers.XD() - InsSizeComputers.DqqdqX() - InsSizeComputers.DqddqX() - InsSizeComputers.DqwDq() - InsSizeComputers.DqwX() - InsSizeComputers.DqQqq() - InsSizeComputers.DqbX() - InsSizeComputers.DbDq() - InsSizeComputers.BV() - InsSizeComputers.Q() - InsSizeComputers.S() - InsSizeComputers.DX() - InsSizeComputers.DqdXz() - InsSizeComputers.DqqX() - InsSizeComputers.P() - InsSizeComputers.PRM() - InsSizeComputers.XqXz() - InsSizeComputers.XXz() - InsSizeComputers.XzX() - InsSizeComputers.XzXz() - InsSizeComputers.DqqQq() - InsSizeComputers.DqqXz() - InsSizeComputers.QqXz() - InsSizeComputers.QqXzRM() - InsSizeComputers.DqdX() - InsSizeComputers.DXz() - InsSizeComputers.QXz() - InsSizeComputers.DqQq() - InsSizeComputers.DqXz() - InsSizeComputers.YDq() - InsSizeComputers.Qq() - InsSizeComputers.DqwdX() - InsSizeComputers.Y() - InsSizeComputers.QQb() - InsSizeComputers.QQd() - InsSizeComputers.QQw() - InsSizeComputers.VecDefRC() - InsSizeComputers.YP() |] - - let oneByteParsers = - [| OneOp00() :> ParsingJob - OneOp01() :> ParsingJob - OneOp02() :> ParsingJob - OneOp03() :> ParsingJob - OneOp04() :> ParsingJob - OneOp05() :> ParsingJob - OneOp06() :> ParsingJob - OneOp07() :> ParsingJob - OneOp08() :> ParsingJob - OneOp09() :> ParsingJob - OneOp0A() :> ParsingJob - OneOp0B() :> ParsingJob - OneOp0C() :> ParsingJob - OneOp0D() :> ParsingJob - OneOp0E() :> ParsingJob - OneOp0F() :> ParsingJob - OneOp10() :> ParsingJob - OneOp11() :> ParsingJob - OneOp12() :> ParsingJob - OneOp13() :> ParsingJob - OneOp14() :> ParsingJob - OneOp15() :> ParsingJob - OneOp16() :> ParsingJob - OneOp17() :> ParsingJob - OneOp18() :> ParsingJob - OneOp19() :> ParsingJob - OneOp1A() :> ParsingJob - OneOp1B() :> ParsingJob - OneOp1C() :> ParsingJob - OneOp1D() :> ParsingJob - OneOp1E() :> ParsingJob - OneOp1F() :> ParsingJob - OneOp20() :> ParsingJob - OneOp21() :> ParsingJob - OneOp22() :> ParsingJob - OneOp23() :> ParsingJob - OneOp24() :> ParsingJob - OneOp25() :> ParsingJob - OneOp26() :> ParsingJob - OneOp27() :> ParsingJob - OneOp28() :> ParsingJob - OneOp29() :> ParsingJob - OneOp2A() :> ParsingJob - OneOp2B() :> ParsingJob - OneOp2C() :> ParsingJob - OneOp2D() :> ParsingJob - OneOp2E() :> ParsingJob - OneOp2F() :> ParsingJob - OneOp30() :> ParsingJob - OneOp31() :> ParsingJob - OneOp32() :> ParsingJob - OneOp33() :> ParsingJob - OneOp34() :> ParsingJob - OneOp35() :> ParsingJob - OneOp36() :> ParsingJob - OneOp37() :> ParsingJob - OneOp38() :> ParsingJob - OneOp39() :> ParsingJob - OneOp3A() :> ParsingJob - OneOp3B() :> ParsingJob - OneOp3C() :> ParsingJob - OneOp3D() :> ParsingJob - OneOp3E() :> ParsingJob - OneOp3F() :> ParsingJob - OneOp40() :> ParsingJob - OneOp41() :> ParsingJob - OneOp42() :> ParsingJob - OneOp43() :> ParsingJob - OneOp44() :> ParsingJob - OneOp45() :> ParsingJob - OneOp46() :> ParsingJob - OneOp47() :> ParsingJob - OneOp48() :> ParsingJob - OneOp49() :> ParsingJob - OneOp4A() :> ParsingJob - OneOp4B() :> ParsingJob - OneOp4C() :> ParsingJob - OneOp4D() :> ParsingJob - OneOp4E() :> ParsingJob - OneOp4F() :> ParsingJob - OneOp50() :> ParsingJob - OneOp51() :> ParsingJob - OneOp52() :> ParsingJob - OneOp53() :> ParsingJob - OneOp54() :> ParsingJob - OneOp55() :> ParsingJob - OneOp56() :> ParsingJob - OneOp57() :> ParsingJob - OneOp58() :> ParsingJob - OneOp59() :> ParsingJob - OneOp5A() :> ParsingJob - OneOp5B() :> ParsingJob - OneOp5C() :> ParsingJob - OneOp5D() :> ParsingJob - OneOp5E() :> ParsingJob - OneOp5F() :> ParsingJob - OneOp60() :> ParsingJob - OneOp61() :> ParsingJob - OneOp62() :> ParsingJob - OneOp63() :> ParsingJob - OneOp64() :> ParsingJob - OneOp65() :> ParsingJob - OneOp66() :> ParsingJob - OneOp67() :> ParsingJob - OneOp68() :> ParsingJob - OneOp69() :> ParsingJob - OneOp6A() :> ParsingJob - OneOp6B() :> ParsingJob - OneOp6C() :> ParsingJob - OneOp6D() :> ParsingJob - OneOp6E() :> ParsingJob - OneOp6F() :> ParsingJob - OneOp70() :> ParsingJob - OneOp71() :> ParsingJob - OneOp72() :> ParsingJob - OneOp73() :> ParsingJob - OneOp74() :> ParsingJob - OneOp75() :> ParsingJob - OneOp76() :> ParsingJob - OneOp77() :> ParsingJob - OneOp78() :> ParsingJob - OneOp79() :> ParsingJob - OneOp7A() :> ParsingJob - OneOp7B() :> ParsingJob - OneOp7C() :> ParsingJob - OneOp7D() :> ParsingJob - OneOp7E() :> ParsingJob - OneOp7F() :> ParsingJob - OneOp80() :> ParsingJob - OneOp81() :> ParsingJob - OneOp82() :> ParsingJob - OneOp83() :> ParsingJob - OneOp84() :> ParsingJob - OneOp85() :> ParsingJob - OneOp86() :> ParsingJob - OneOp87() :> ParsingJob - OneOp88() :> ParsingJob - OneOp89() :> ParsingJob - OneOp8A() :> ParsingJob - OneOp8B() :> ParsingJob - OneOp8C() :> ParsingJob - OneOp8D() :> ParsingJob - OneOp8E() :> ParsingJob - OneOp8F() :> ParsingJob - OneOp90() :> ParsingJob - OneOp91() :> ParsingJob - OneOp92() :> ParsingJob - OneOp93() :> ParsingJob - OneOp94() :> ParsingJob - OneOp95() :> ParsingJob - OneOp96() :> ParsingJob - OneOp97() :> ParsingJob - OneOp98() :> ParsingJob - OneOp99() :> ParsingJob - OneOp9A() :> ParsingJob - OneOp9B() :> ParsingJob - OneOp9C() :> ParsingJob - OneOp9D() :> ParsingJob - OneOp9E() :> ParsingJob - OneOp9F() :> ParsingJob - OneOpA0() :> ParsingJob - OneOpA1() :> ParsingJob - OneOpA2() :> ParsingJob - OneOpA3() :> ParsingJob - OneOpA4() :> ParsingJob - OneOpA5() :> ParsingJob - OneOpA6() :> ParsingJob - OneOpA7() :> ParsingJob - OneOpA8() :> ParsingJob - OneOpA9() :> ParsingJob - OneOpAA() :> ParsingJob - OneOpAB() :> ParsingJob - OneOpAC() :> ParsingJob - OneOpAD() :> ParsingJob - OneOpAE() :> ParsingJob - OneOpAF() :> ParsingJob - OneOpB0() :> ParsingJob - OneOpB1() :> ParsingJob - OneOpB2() :> ParsingJob - OneOpB3() :> ParsingJob - OneOpB4() :> ParsingJob - OneOpB5() :> ParsingJob - OneOpB6() :> ParsingJob - OneOpB7() :> ParsingJob - OneOpB8() :> ParsingJob - OneOpB9() :> ParsingJob - OneOpBA() :> ParsingJob - OneOpBB() :> ParsingJob - OneOpBC() :> ParsingJob - OneOpBD() :> ParsingJob - OneOpBE() :> ParsingJob - OneOpBF() :> ParsingJob - OneOpC0() :> ParsingJob - OneOpC1() :> ParsingJob - OneOpC2() :> ParsingJob - OneOpC3() :> ParsingJob - OneOpC4() :> ParsingJob - OneOpC5() :> ParsingJob - OneOpC6() :> ParsingJob - OneOpC7() :> ParsingJob - OneOpC8() :> ParsingJob - OneOpC9() :> ParsingJob - OneOpCA() :> ParsingJob - OneOpCB() :> ParsingJob - OneOpCC() :> ParsingJob - OneOpCD() :> ParsingJob - OneOpCE() :> ParsingJob - OneOpCF() :> ParsingJob - OneOpD0() :> ParsingJob - OneOpD1() :> ParsingJob - OneOpD2() :> ParsingJob - OneOpD3() :> ParsingJob - OneOpD4() :> ParsingJob - OneOpD5() :> ParsingJob - OneOpD6() :> ParsingJob - OneOpD7() :> ParsingJob - OneOpD8() :> ParsingJob - OneOpD9() :> ParsingJob - OneOpDA() :> ParsingJob - OneOpDB() :> ParsingJob - OneOpDC() :> ParsingJob - OneOpDD() :> ParsingJob - OneOpDE() :> ParsingJob - OneOpDF() :> ParsingJob - OneOpE0() :> ParsingJob - OneOpE1() :> ParsingJob - OneOpE2() :> ParsingJob - OneOpE3() :> ParsingJob - OneOpE4() :> ParsingJob - OneOpE5() :> ParsingJob - OneOpE6() :> ParsingJob - OneOpE7() :> ParsingJob - OneOpE8() :> ParsingJob - OneOpE9() :> ParsingJob - OneOpEA() :> ParsingJob - OneOpEB() :> ParsingJob - OneOpEC() :> ParsingJob - OneOpED() :> ParsingJob - OneOpEE() :> ParsingJob - OneOpEF() :> ParsingJob - OneOpF0() :> ParsingJob - OneOpF1() :> ParsingJob - OneOpF2() :> ParsingJob - OneOpF3() :> ParsingJob - OneOpF4() :> ParsingJob - OneOpF5() :> ParsingJob - OneOpF6() :> ParsingJob - OneOpF7() :> ParsingJob - OneOpF8() :> ParsingJob - OneOpF9() :> ParsingJob - OneOpFA() :> ParsingJob - OneOpFB() :> ParsingJob - OneOpFC() :> ParsingJob - OneOpFD() :> ParsingJob - OneOpFE() :> ParsingJob - OneOpFF() :> ParsingJob |] - /// Split a byte value into two fileds (high 3 bits; low 5 bits), and /// categorize prefix values into 8 groups based on the high 3 bits (= 2^3). /// The below array is a collection of bitmaps that maps the low 5-bit value @@ -518,7 +55,171 @@ type IntelParser(wordSz, reader) = member _.Lift(ins, builder) = Lifter.translate ins ins.Length builder member _.Disasm(ins, builder) = disasm.Invoke(builder, ins); builder } - let phlp = ParsingHelper(reader, wordSz, oparsers, szcomputers, lifter) + let phlp = ParsingHelper(reader, wordSz, lifter) + + let checkVectorLength (vex: VEXInfo option) insVecLen = + if insVecLen = VectorLength.None then true + else + match vex with + | Some v -> + match v.VectorLength with + | 128 -> insVecLen = VectorLength.V128 + | 256 -> insVecLen = VectorLength.V256 + | 512 -> insVecLen = VectorLength.V512 + | _ -> false + | _ -> true + + let checkREXPrefix (rex: REXPrefix) insREX = + match rex with + | REXPrefix.NOREX -> + (insREX = REXPrefixType.WIG) || (insREX = REXPrefixType.W0) || + (insREX = REXPrefixType.NOREX) + | r when (r &&& REXPrefix.REXW) = REXPrefix.REXW -> + (insREX = REXPrefixType.WIG) || (insREX = REXPrefixType.W1) || + (insREX = REXPrefixType.REXW) + //| r when (r &&& REXPrefix.REX) = REXPrefix.REX -> + // (insREX = REXPrefixType.WIG) || (insREX = REXPrefixType.W0) || + // (insREX = REXPrefixType.REX) + | _ -> true + + let toPrefixType preType pref = + if (pref &&& Prefix.OPSIZE) <> Prefix.None then preType P66 + elif (pref &&& Prefix.REPZ) <> Prefix.None then preType F3 + elif (pref &&& Prefix.REPNZ) <> Prefix.None then preType F2 + else preType NP + + let convertPrefix maps (pref: Prefix) (vex: VEXInfo option) = + match vex with + | Some v -> toPrefixType Mandatory v.VPrefixes + | None -> + let baseType = + match maps with + | Normal OneByte -> Legacy + | _ -> Mandatory + toPrefixType baseType pref + + let getOperandSize operands = + Array.map (fun o -> + match o with + | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz + | _ -> None) operands + |> Array.distinct + + let checkPrefix pref insPref operands = + match pref with + // Legacy prefixes are not explicitly specified in the manual. + | Legacy P66 -> + match getOperandSize operands with + | [| Some sz |] -> + match sz with + | Sz16 -> true + | _ -> false + | _ -> true + | Mandatory _ -> pref = insPref + | _ -> true + + let isGroupOpcode = function + | ModRMType.ModRMOp0 | ModRMType.ModRMOp1 | ModRMType.ModRMOp2 + | ModRMType.ModRMOp3 | ModRMType.ModRMOp4 | ModRMType.ModRMOp5 + | ModRMType.ModRMOp6 | ModRMType.ModRMOp7 -> true + | _ -> false + + let checkGroupOpcode (span: ByteSpan) (phlp: ParsingHelper) modRMType = + if isGroupOpcode modRMType then + let modRM = span[phlp.CurrPos] + let reg = (modRM >>> 3) &&& 0b111uy + match reg with + | 0uy -> modRMType = ModRMType.ModRMOp0 + | 1uy -> modRMType = ModRMType.ModRMOp1 + | 2uy -> modRMType = ModRMType.ModRMOp2 + | 3uy -> modRMType = ModRMType.ModRMOp3 + | 4uy -> modRMType = ModRMType.ModRMOp4 + | 5uy -> modRMType = ModRMType.ModRMOp5 + | 6uy -> modRMType = ModRMType.ModRMOp6 + | 7uy -> modRMType = ModRMType.ModRMOp7 + | x -> false + else true + + let findSubIndex span (phlp: ParsingHelper) (ins: InstructionCore[]) = + let insLen = ins.Length + if insLen = 0 then failwith "Error: Instruction core array is empty." + elif insLen = 1 then 0 + else + let pref = convertPrefix phlp.OpcodeClass phlp.Prefixes phlp.VEXInfo + let mutable idx = -1 + let mutable i = 0 + while i < insLen && idx = -1 do + let insCore = ins[i] + if (checkPrefix pref insCore.PrefixType insCore.Operands) && + (checkREXPrefix phlp.REXPrefix insCore.REXPrefixType) && + (checkVectorLength phlp.VEXInfo insCore.VectorLength) && + (checkGroupOpcode span phlp insCore.ModRM) + then idx <- i + else () + i <- i + 1 + if idx = -1 then + printfn "Fail: find sub index\n maps: %A, pref: %A, rex: %A, vex: %A" + phlp.OpcodeClass pref phlp.REXPrefix phlp.VEXInfo + Array.iter (printfn " %A") ins + failwithf "No matching instruction format." + else () + idx + + let oprSzToRegType = function + | OprSize.Sz8 -> 8 + | OprSize.Sz16 -> 16 + | OprSize.Sz32 -> 32 + | OprSize.Sz64 -> 64 + | OprSize.Sz128 -> 128 + | OprSize.Sz256 -> 256 + | OprSize.Sz512 -> 512 + + let parseOperand span (phlp: ParsingHelper) modRM (opEn: OpEn) i = function + | RM sz -> + let sz = oprSzToRegType sz + // FIXME: need operand size determination logic + phlp.MemEffOprSize <- sz + phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp + phlp.MemEffRegSize <- sz + phlp.RegSize <- sz + phlp.OperationSize <- sz + OperandParsers.parseMemOrReg modRM span phlp + | Reg sz -> + match opEn with + | OpEn.RVM when i = 1 -> OperandParsers.parseVVVVReg phlp + | _ -> + OperandParsers.findRegRBits (oprSzToRegType sz) phlp.REXPrefix + (Operands.getReg modRM) + |> OprReg + | Imm sz -> + OperandParsers.parseOprImm span phlp (oprSzToRegType sz) + | Rel sz -> + OperandParsers.parseOprForRelJmp span phlp (oprSzToRegType sz) + | o -> + failwithf "Unsupported operand type: %A" o + + let arrayToOperands = function + | [||] -> Operands.NoOperand + | [| op1 |] -> Operands.OneOperand(op1) + | [| op1; op2 |] -> Operands.TwoOperands(op1, op2) + | [| op1; op2; op3 |] -> Operands.ThreeOperands(op1, op2, op3) + | [| op1; op2; op3; op4 |] -> Operands.FourOperands(op1, op2, op3, op4) + | _ -> failwith "Invalid number of operands." + + let parseOperands span (phlp: ParsingHelper) (ic: InstructionCore) = + let modRM = + match ic.ModRM with + | ModRMType.NoModRM -> 0uy + | _ -> phlp.ReadByte span + + match ic.Operands with + | [| NoOpr |] -> Operands.NoOperand + | _ -> + let operands = Array.zeroCreate ic.Operands.Length + for i = 0 to ic.Operands.Length - 1 do + let opr = ic.Operands[i] + operands[i] <- parseOperand span phlp modRM ic.OpEn i opr + operands |> arrayToOperands member _.SetDisassemblySyntax syntax = match syntax with @@ -557,6 +258,33 @@ type IntelParser(wordSz, reader) = pos + 1 else pos + member inline private _.ParseVEX(bs: ByteSpan, pos, rex: REXPrefix byref, + vex: VEXInfo option byref) = + match bs[pos] with + | 0xC5uy -> + vex <- Some(getTwoVEXInfo bs &rex (pos + 1)) + pos + 2 + | 0xC4uy -> + vex <- Some(getThreeVEXInfo bs &rex (pos + 1)) + pos + 3 + | 0x62uy -> + vex <- Some(getEVEXInfo bs &rex (pos + 1)) + pos + 4 + | 0x0Fuy -> + match bs[pos + 1] with + | 0x38uy -> + phlp.OpcodeClass <- Normal ThreeBytes38 + pos + 2 + | 0x3Auy -> + phlp.OpcodeClass <- Normal ThreeBytes3A + pos + 2 + | _ -> + phlp.OpcodeClass <- Normal TwoBytes + pos + 1 + | _ -> + phlp.OpcodeClass <- Normal OneByte + pos + interface IInstructionParsable with member _.MaxInstructionSize = 15 @@ -565,14 +293,59 @@ type IntelParser(wordSz, reader) = member this.Parse(span: ByteSpan, addr) = let mutable rex = REXPrefix.NOREX + let mutable vex = None let prefEndPos = this.ParsePrefix span let nextPos = this.ParseREX(span, prefEndPos, &rex) + let rexEndPos = this.ParseREX(span, prefEndPos, &rex) + let nextPos = this.ParseVEX(span, rexEndPos, &rex, &vex) phlp.VEXInfo <- None phlp.IsFar <- false phlp.InsAddr <- addr phlp.REXPrefix <- rex + phlp.VEXInfo <- vex phlp.CurrPos <- nextPos #if LCACHE phlp.MarkPrefixEnd(prefEndPos) #endif - oneByteParsers[int (phlp.ReadByte span)].Run(span, phlp) :> IInstruction + //oneByteParsers[int (phlp.ReadByte span)].Run(span, phlp) :> IInstruction + let insCores = + match phlp.VEXInfo with + | Some vInfo -> + match vInfo.VEXType with + | v when v &&& VEXType.EVEX = VEXType.EVEX -> + match vInfo.VEXType &&& (~~~VEXType.EVEX) with + | VEXType.TwoByteOp -> + phlp.OpcodeClass <- EVEX TwoBytes + InstructionArrays.evexTwo[int (phlp.ReadByte span)] + | VEXType.ThreeByteOpOne -> + phlp.OpcodeClass <- EVEX ThreeBytes38 + InstructionArrays.evexThree38[int (phlp.ReadByte span)] + | VEXType.ThreeByteOpTwo -> + phlp.OpcodeClass <- EVEX ThreeBytes3A + InstructionArrays.evexThree3A[int (phlp.ReadByte span)] + | _ -> raise ParsingFailureException + | VEXType.TwoByteOp -> + phlp.OpcodeClass <- VEX TwoBytes + InstructionArrays.vexTwo[int (phlp.ReadByte span)] + | VEXType.ThreeByteOpOne -> + phlp.OpcodeClass <- VEX ThreeBytes38 + InstructionArrays.vexThree38[int (phlp.ReadByte span)] + | VEXType.ThreeByteOpTwo -> + phlp.OpcodeClass <- VEX ThreeBytes3A + InstructionArrays.vexThree3A[int (phlp.ReadByte span)] + | _ -> raise ParsingFailureException + | None -> + match phlp.OpcodeClass with + | Normal ThreeBytes38 -> + InstructionArrays.norThree38[int (phlp.ReadByte span)] + | Normal ThreeBytes3A -> + InstructionArrays.norThree3A[int (phlp.ReadByte span)] + | Normal TwoBytes -> + InstructionArrays.norTwo[int (phlp.ReadByte span)] + | _ -> + InstructionArrays.norOne[int (phlp.ReadByte span)] + let subIdx = findSubIndex span phlp insCores + //printfn "InstructionCore: %A\nOpcode Class: %A" + // insCores[subIdx] phlp.OpcodeClass + let operands = parseOperands span phlp insCores[subIdx] + newInstruction phlp insCores[subIdx].Opcode operands :> IInstruction \ No newline at end of file diff --git a/src/FrontEnd/Intel/ParsingFunctions.fs b/src/FrontEnd/Intel/ParsingFunctions.fs index 5049dc108..0f7a99bf6 100644 --- a/src/FrontEnd/Intel/ParsingFunctions.fs +++ b/src/FrontEnd/Intel/ParsingFunctions.fs @@ -6514,763 +6514,11 @@ let getInstr prefix fnInstr = fnInstr (getMandPrx prefix) /// The main instruction rendering function. let render span phlp opcode szCond (oidx: OD) (sidx: SizeKind) = - match sidx with - | SizeKind.VecDefRC -> - (phlp: ParsingHelper).SzComputers[int sidx].RenderEVEX(span, phlp, szCond) - | _ -> (phlp: ParsingHelper).SzComputers[int sidx].Render(phlp, szCond) - exceptionHandling opcode phlp - let oprs = phlp.OprParsers[int oidx].Render(span, phlp) - newInstruction phlp opcode oprs - -/// Parse group Opcodes: Vol.2C A-19 Table A-6. Opcode Extensions for One- and -/// Two-byte Opcodes by Group Number. -let parseGrpOp span phlp grp oidx sidx = - let struct (op, oidx, szidx, szCond) = parseGrpOpKind span phlp oidx sidx grp - if Opcode.isBranch op then addBND phlp |> ignore - elif Opcode.isCETInstr op then - phlp.Prefixes <- Prefix.ClearGrp1PrefMask &&& phlp.Prefixes - else () - render span phlp op szCond oidx szidx - -/// Normal/VEX -let parseVEX span (phlp: ParsingHelper) fnNor fnVex = - match phlp.VEXInfo with - | None -> - let struct (op, oidx, sidx, _) = fnNor (getMandPrx phlp.Prefixes) - phlp.Prefixes <- filterPrefs phlp.Prefixes - render span phlp op SzCond.Normal oidx sidx - | Some v -> - let struct (op, oidx, sidx, _) = fnVex (getMandPrx v.VPrefixes) - render span phlp op SzCond.Normal oidx sidx - -/// Select Normal(REX.W), VEX(REX.W) -let selectVEXW (span: ByteSpan) phlp fnNorW0 fnNorW1 fnVexW0 fnVexW1 = - match (phlp: ParsingHelper).VEXInfo with - | None -> - let fnNor = if REXPrefix.hasW phlp.REXPrefix then fnNorW1 else fnNorW0 - let ins = getInstr phlp.Prefixes fnNor - phlp.Prefixes <- filterPrefs phlp.Prefixes - ins - | Some v -> - let fnVex = if REXPrefix.hasW phlp.REXPrefix then fnVexW1 else fnVexW0 - getInstr v.VPrefixes fnVex - -/// Normal(REX.W)/VEX(REX.W) -let parseVEXW span phlp fnNorW0 fnNorW1 fnVexW0 fnVexW1 = - let struct (op, oidx, sidx, _) = - selectVEXW span phlp fnNorW0 fnNorW1 fnVexW0 fnVexW1 - render span phlp op SzCond.Normal oidx sidx - -/// Select Normal, VEX, EVEX(REX.W) -let selectEVEX (phlp: ParsingHelper) fnNor fnVex fnEVexW0 fnEVexW1 = - match phlp.VEXInfo with - | None -> - let ins = getInstr phlp.Prefixes fnNor - phlp.Prefixes <- filterPrefs phlp.Prefixes - ins - | Some v -> - if v.VEXType &&& VEXType.EVEX = VEXType.EVEX then - let fnEVex = if REXPrefix.hasW phlp.REXPrefix then fnEVexW1 else fnEVexW0 - getInstr v.VPrefixes fnEVex - else getInstr v.VPrefixes fnVex - -/// Normal/VEX/EVEX(REX.W) -let parseEVEX span phlp fnNor fnVex fnEVexW0 fnEVexW1 = - let struct (op, oidx, sidx, tt) = - selectEVEX phlp fnNor fnVex fnEVexW0 fnEVexW1 - phlp.TupleType <- tt - render span phlp op SzCond.Normal oidx sidx - -/// Select VEX(REX.W), EVEX(REX.W) -let selectEVEXW (phlp: ParsingHelper) fnVexW0 fnVexW1 fnEVexW0 fnEVexW1 = - match phlp.VEXInfo with - | None -> raise ParsingFailureException - | Some v -> - if v.VEXType &&& VEXType.EVEX = VEXType.EVEX then - let fnEVex = if REXPrefix.hasW phlp.REXPrefix then fnEVexW1 else fnEVexW0 - getInstr v.VPrefixes fnEVex - else - let fnVex = if REXPrefix.hasW phlp.REXPrefix then fnVexW1 else fnVexW0 - getInstr v.VPrefixes fnVex - -/// VEX(REX.W)/EVEX(REX.W) -let parseEVEXW span phlp fnVexW0 fnVexW1 fnEVexW0 fnEVexW1 = - let struct (op, oidx, sidx, tt) = - selectEVEXW phlp fnVexW0 fnVexW1 fnEVexW0 fnEVexW1 - phlp.TupleType <- tt - render span phlp op SzCond.Normal oidx sidx - -/// Select Normal(REX.W), VEX(REX.W), EVEX(REX.W) -let selectEVEXAll (phlp: ParsingHelper) fnNorW0 fnNorW1 fnVexW0 fnVexW1 fnEVexW0 - fnEVexW1 = - match (phlp: ParsingHelper).VEXInfo with - | None -> - let fnNor = if REXPrefix.hasW phlp.REXPrefix then fnNorW1 else fnNorW0 - let ins = getInstr phlp.Prefixes fnNor - phlp.Prefixes <- filterPrefs phlp.Prefixes - ins - | Some v -> - if v.VEXType &&& VEXType.EVEX = VEXType.EVEX then - let fnEVex = if REXPrefix.hasW phlp.REXPrefix then fnEVexW1 else fnEVexW0 - getInstr v.VPrefixes fnEVex - else - let fnVex = if REXPrefix.hasW phlp.REXPrefix then fnVexW1 else fnVexW0 - getInstr v.VPrefixes fnVex - -/// Normal(REX.W)/VEX(REX.W)/EVEX(REX.W) -let parseEVEXAll span phlp fnNorW0 fnNorW1 fnVexW0 fnVexW1 fnEVexW0 fnEVexW1 = - let struct (op, oidx, sidx, tt) = - selectEVEXAll phlp fnNorW0 fnNorW1 fnVexW0 fnVexW1 fnEVexW0 fnEVexW1 - phlp.TupleType <- tt - render span phlp op SzCond.Normal oidx sidx - -/// Parse non-VEX instructions. -let parseNonVEX span (phlp: ParsingHelper) fnNor = - let struct (op, oidx, sidx, _) = getInstr phlp.Prefixes fnNor - phlp.Prefixes <- filterPrefs phlp.Prefixes - render span phlp op SzCond.Normal oidx sidx - -/// Parse non-VEX instructions. -let pVEXByMem span (phlp: ParsingHelper) fnNorM fnNorR fnVexM fnVexR = - let struct (fnNor, fnVex) = - if phlp.PeekByte span |> Operands.modIsMemory then struct (fnNorM, fnVexM) - else struct (fnNorR, fnVexR) - parseVEX span phlp fnNor fnVex - -/// Parse BND-related instructions. -let parseBND span (phlp: ParsingHelper) szCond fnBND = - let struct (op, oidx, sidx, _) = getInstr phlp.Prefixes fnBND - phlp.Prefixes <- filterPrefs phlp.Prefixes - render span phlp op szCond oidx sidx - -let parseCETInstr span (phlp: ParsingHelper) = - let struct (op, oidx, sidx, _) = - match phlp.PeekByte span with - | 0xFAuy -> phlp.IncPos(); struct (ENDBR64, OD.No, SZ.Def, TT.NA) - | 0xFBuy -> phlp.IncPos(); struct (ENDBR32, OD.No, SZ.Def, TT.NA) - | b when Operands.getReg b = 0b001 && Operands.getMod b = 0b11 -> - let op = if REXPrefix.hasW phlp.REXPrefix then RDSSPQ else RDSSPD - struct (op, OD.Gpr, SZ.Def, TT.NA) - | _ -> raise InvalidOpcodeException - phlp.Prefixes <- Prefix.ClearGrp1PrefMask &&& phlp.Prefixes - render span phlp op SzCond.Normal oidx sidx - -let parsePadLockInstr1 span (phlp: ParsingHelper) = - let opcode = - match phlp.PeekByte span with - | 0xC0uy -> - phlp.IncPos() - if Prefix.hasREPNZ phlp.Prefixes then - phlp.Prefixes <- Prefix.ClearGrp1PrefMask &&& phlp.Prefixes - SM2 - else MONTMUL - | 0xC8uy -> phlp.IncPos(); XSHA1 - | 0xD0uy -> phlp.IncPos(); XSHA256 - | 0xD8uy -> phlp.IncPos(); XSHA384 - | 0xE0uy -> phlp.IncPos(); XSHA512 - | 0xE8uy -> - phlp.IncPos() - phlp.Prefixes <- Prefix.ClearGrp1PrefMask &&& phlp.Prefixes - CCS_HASH - | 0xF0uy -> phlp.IncPos(); MONTMUL2 - | 0xF8uy -> phlp.IncPos(); XMODEXP - | _ -> raise InvalidOpcodeException - render span phlp opcode SzCond.Normal OD.No SZ.Def - -let parsePadLockInstr2 span (phlp: ParsingHelper) = - let opcode = - match phlp.PeekByte span with - | 0xC0uy -> phlp.IncPos(); XSTORERNG - | 0xC8uy -> phlp.IncPos(); XCRYPTECB - | 0xD0uy -> phlp.IncPos(); XCRYPTCBC - | 0xD8uy -> phlp.IncPos(); XCRYPTCTR - | 0xE0uy -> phlp.IncPos(); XCRYPTCFB - | 0xE8uy -> phlp.IncPos(); XCRYPTOFB - | 0xF0uy -> - phlp.IncPos() - phlp.Prefixes <- Prefix.ClearGrp1PrefMask &&& phlp.Prefixes - CCS_ENCRYPT - | 0xF8uy -> phlp.IncPos(); XRNG2 - | _ -> raise InvalidOpcodeException - render span phlp opcode SzCond.Normal OD.No SZ.Def - -/// When the first two bytes are 0F38. -/// Table A-4 of Volume 2 (Three-byte Opcode Map : First Two Bytes are 0F 38H) -let parseThreeByteOp1 span (phlp: ParsingHelper) = - match phlp.ReadByte span with - | 0x00uy -> parseVEX span phlp nor0F3800 vex0F3800 - | 0x01uy -> parseVEX span phlp nor0F3801 vex0F3801 - | 0x02uy -> parseVEX span phlp nor0F3802 vex0F3802 - | 0x03uy -> parseVEX span phlp nor0F3803 vex0F3803 - | 0x04uy -> parseEVEX span phlp nor0F3804 vex0F3804 notEn notEn - | 0x05uy -> parseVEX span phlp nor0F3805 vex0F3805 - | 0x06uy -> parseVEX span phlp nor0F3806 vex0F3806 - | 0x07uy -> parseVEX span phlp nor0F3807 vex0F3807 - | 0x08uy -> parseVEX span phlp nor0F3808 vex0F3808 - | 0x09uy -> parseVEX span phlp nor0F3809 vex0F3809 - | 0x0auy -> parseVEX span phlp nor0F380A vex0F380A - | 0x0buy -> parseVEX span phlp nor0F380B vex0F380B - | 0x0cuy -> parseEVEXW span phlp vex0F380CW0 notEn notEn notEn - | 0x0duy -> parseEVEXW span phlp vex0F380DW0 notEn notEn notEn - | 0x0euy -> parseEVEXW span phlp vex0F380EW0 notEn notEn notEn - | 0x0fuy -> parseEVEXW span phlp vex0F380FW0 notEn notEn notEn - | 0x10uy -> parseVEX span phlp nor0F3810 notEn - | 0x13uy -> parseEVEXW span phlp vex0F3813W0 notEn notEn notEn - | 0x14uy -> parseEVEX span phlp nor0F3814 notEn evex0F3814W0 evex0F3814W1 - | 0x15uy -> parseVEX span phlp nor0F3815 notEn - | 0x16uy -> parseVEXW span phlp notEn notEn vex0F3816W0 notEn - | 0x17uy -> parseVEX span phlp nor0F3817 vex0F3817 - | 0x18uy -> parseEVEXW span phlp vex0F3818W0 notEn evex0F3818W0 notEn - | 0x19uy -> parseEVEXW span phlp vex0F3819W0 notEn notEn evex0F3819W1 - | 0x1auy -> parseVEXW span phlp notEn notEn vex0F381AW0 notEn - | 0x1cuy -> parseVEX span phlp nor0F381C vex0F381C - | 0x1duy -> parseVEX span phlp nor0F381D vex0F381D - | 0x1euy -> parseVEX span phlp nor0F381E vex0F381E - | 0x1fuy -> parseEVEXW span phlp notEn notEn notEn evex0F381FW1 - | 0x20uy -> parseVEX span phlp nor0F3820 vex0F3820 - | 0x21uy -> parseVEX span phlp nor0F3821 vex0F3821 - | 0x22uy -> parseVEX span phlp nor0F3822 vex0F3822 - | 0x23uy -> parseVEX span phlp nor0F3823 vex0F3823 - | 0x24uy -> parseVEX span phlp nor0F3824 vex0F3824 - | 0x25uy -> parseEVEX span phlp nor0F3825 vex0F3825 evex0F3825W0 notEn - | 0x26uy -> parseEVEX span phlp notEn notEn evex0F3826W0 notEn - | 0x28uy -> parseVEX span phlp nor0F3828 vex0F3828 - | 0x29uy -> parseVEX span phlp nor0F3829 vex0F3829 - | 0x2auy -> parseEVEX span phlp nor0F382A vex0F382A notEn evex0F382AW1 - | 0x2buy -> parseVEX span phlp nor0F382B vex0F382B - | 0x2cuy -> parseEVEXW span phlp vex0F382CW0 notEn evex0F382CW0 evex0F382CW1 - | 0x2duy -> parseEVEXW span phlp vex0F382DW0 notEn evex0F382DW0 evex0F382DW1 - | 0x2euy -> parseVEXW span phlp notEn notEn vex0F382EW0 notEn - | 0x2fuy -> parseVEXW span phlp notEn notEn vex0F382FW0 notEn - | 0x30uy -> parseEVEX span phlp nor0F3830 vex0F3830 evex0F3830 evex0F3830 - | 0x31uy -> parseVEX span phlp nor0F3831 vex0F3831 - | 0x32uy -> parseVEX span phlp nor0F3832 vex0F3832 - | 0x33uy -> parseEVEX span phlp nor0F3833 vex0F3833 evex0F3833 evex0F3833 - | 0x34uy -> parseVEX span phlp nor0F3834 vex0F3834 - | 0x35uy -> parseEVEX span phlp nor0F3835 vex0F3835 evex0F3835W0 notEn - | 0x36uy -> parseEVEXW span phlp vex0F3836W0 notEn notEn evex0F3836W1 - | 0x37uy -> parseVEX span phlp nor0F3837 vex0F3837 - | 0x38uy -> parseVEX span phlp nor0F3838 vex0F3838 - | 0x39uy -> parseEVEX span phlp nor0F3839 vex0F3839 evex0F3839W0 notEn - | 0x3auy -> parseEVEX span phlp nor0F383A vex0F383A evex0F383AW0 notEn - | 0x3buy -> parseVEX span phlp nor0F383B vex0F383B - | 0x3cuy -> parseVEX span phlp nor0F383C vex0F383C - | 0x3duy -> parseVEX span phlp nor0F383D vex0F383D - | 0x3euy -> parseVEX span phlp nor0F383E vex0F383E - | 0x3fuy -> parseVEX span phlp nor0F383F vex0F383F - | 0x40uy -> parseVEX span phlp nor0F3840 vex0F3840 - | 0x41uy -> parseVEX span phlp nor0F3841 vex0F3841 - | 0x43uy -> parseEVEXW span phlp notEn notEn notEn evex0F3843W1 - | 0x45uy -> parseEVEXW span phlp vex0F3845W0 vex0F3845W1 notEn notEn - | 0x46uy -> parseEVEXW span phlp vex0F3846W0 notEn notEn notEn - | 0x47uy -> parseEVEXW span phlp vex0F3847W0 vex0F3847W1 notEn notEn - | 0x4Duy -> parseEVEXW span phlp notEn notEn notEn evex0F384DW1 - | 0x50uy -> parseEVEXW span phlp vex0F3850W0 notEn evex0F3850W0 notEn - | 0x51uy -> parseEVEXW span phlp vex0F3851W0 notEn evex0F3851W0 notEn - | 0x52uy -> parseEVEXW span phlp vex0F3852W0 notEn evex0F3852W0 notEn - | 0x53uy -> parseEVEXW span phlp vex0F3853W0 notEn evex0F3853W0 notEn - | 0x54uy -> parseEVEXW span phlp notEn notEn evex0F3854W0 evex0F3854W1 - | 0x55uy -> parseEVEXW span phlp notEn notEn evex0F3855W0 evex0F3855W1 - | 0x58uy -> parseEVEXW span phlp vex0F3858W0 notEn evex0F3858W0 notEn - | 0x59uy -> parseEVEXW span phlp vex0F3859W0 notEn evex0F3859W0 evex0F3859W1 - | 0x5Auy -> parseEVEXW span phlp vex0F385AW0 notEn evex0F385AW0 evex0F385AW1 - | 0x5Buy -> parseEVEXW span phlp notEn notEn evex0F385BW0 evex0F385BW1 - | 0x62uy -> parseEVEXW span phlp notEn notEn evex0F3862W0 evex0F3862W1 - | 0x63uy -> parseEVEXW span phlp notEn notEn evex0F3863W0 evex0F3863W1 - | 0x68uy -> parseEVEXW span phlp notEn notEn evex0F3868W0 evex0F3868W1 - | 0x70uy -> parseEVEXW span phlp notEn notEn notEn evex0F3870W1 - | 0x71uy -> parseEVEXW span phlp notEn notEn evex0F3871W0 evex0F3871W1 - | 0x72uy -> parseEVEXW span phlp notEn notEn evex0F3872W0 evex0F3872W1 - | 0x73uy -> parseEVEXW span phlp notEn notEn evex0F3873W0 evex0F3873W1 - | 0x75uy -> parseEVEXW span phlp notEn notEn notEn evex0F3875W1 - | 0x76uy -> parseEVEXW span phlp notEn notEn evex0F3876W0 notEn - | 0x77uy -> parseEVEXW span phlp notEn notEn notEn evex0F3877W1 - | 0x78uy -> parseVEX span phlp nor0F3878 vex0F3878 - | 0x79uy -> parseEVEXW span phlp vex0F3879W0 notEn evex0F3879W0 notEn - | 0x7Auy -> parseEVEXW span phlp notEn notEn evex0F387AW0 notEn - | 0x7Buy -> parseEVEXW span phlp notEn notEn evex0F387BW0 notEn - | 0x7Cuy -> parseEVEXW span phlp notEn notEn evex0F387CW0 evex0F387CW1 - | 0x7Duy -> parseEVEXW span phlp notEn notEn evex0F387DW0 evex0F387DW1 - | 0x7Euy -> parseEVEXW span phlp notEn notEn evex0F387EW0 evex0F387EW1 - | 0x82uy -> parseVEX span phlp nor0F3882 notEn - | 0x83uy -> parseEVEXW span phlp notEn notEn notEn evex0F3883W1 - | 0x8Cuy -> parseVEXW span phlp notEn notEn vex0F388CW0 vex0F388CW1 - | 0x8Duy -> parseEVEXW span phlp notEn notEn evex0F388DW0 notEn - | 0x8Euy -> parseVEXW span phlp notEn notEn vex0F388EW0 vex0F388EW1 - | 0x8Fuy -> parseEVEXW span phlp notEn notEn evex0F388FW0 notEn - | 0x90uy -> parseEVEXW span phlp vex0F3890W0 vex0F3890W1 evex0F3890W0 notEn - | 0x91uy -> parseEVEXW span phlp vex0F3891W0 vex0F3891W1 notEn notEn - | 0x92uy -> parseEVEXW span phlp vex0F3892W0 vex0F3892W1 evex0F3892W0 notEn - | 0x93uy -> parseEVEXW span phlp vex0F3893W0 vex0F3893W1 notEn notEn - | 0x96uy -> - parseEVEXW span phlp vex0F3896W0 vex0F3896W1 evex0F3896W0 evex0F3896W1 - | 0x97uy -> - parseEVEXW span phlp vex0F3897W0 vex0F3897W1 evex0F3897W0 evex0F3897W1 - | 0x98uy -> parseEVEXW span phlp vex0F3898W0 vex0F3898W1 notEn evex0F3898W1 - | 0x99uy -> parseVEXW span phlp notEn notEn vex0F3899W0 vex0F3899W1 - | 0x9Auy -> parseEVEXW span phlp vex0F389AW0 vex0F389AW1 evex0F389AW0 notEn - | 0x9Buy -> parseEVEXW span phlp vex0F389BW0 vex0F389BW1 evex0F389BW0 notEn - | 0x9Cuy -> parseEVEXW span phlp vex0F389CW0 vex0F389CW1 notEn evex0F389CW1 - | 0x9Duy -> parseEVEXW span phlp vex0F389DW0 vex0F389DW1 notEn evex0F389DW1 - | 0x9Euy -> parseEVEXW span phlp vex0F389EW0 vex0F389EW1 notEn notEn - | 0x9Fuy -> parseEVEXW span phlp vex0F389FW0 vex0F389FW1 notEn notEn - | 0xA2uy -> parseEVEXW span phlp notEn notEn evex0F38A2W0 evex0F38A2W1 - | 0xA3uy -> parseEVEXW span phlp notEn notEn evex0F38A3W0 evex0F38A3W1 - | 0xA6uy -> parseEVEXW span phlp vex0F38A6W0 vex0F38A6W1 notEn notEn - | 0xA7uy -> parseEVEXW span phlp vex0F38A7W0 vex0F38A7W1 notEn notEn - | 0xA8uy -> parseEVEXW span phlp vex0F38A8W0 vex0F38A8W1 evex0F38A8W0 notEn - | 0xA9uy -> parseVEXW span phlp notEn notEn vex0F38A9W0 vex0F38A9W1 - | 0xAAuy -> parseEVEXW span phlp vex0F38AAW0 vex0F38AAW1 evex0F38AAW0 notEn - | 0xABuy -> parseEVEXW span phlp vex0F38ABW0 vex0F38ABW1 evex0F38ABW0 notEn - | 0xACuy -> parseEVEXW span phlp vex0F38ACW0 vex0F38ACW1 notEn notEn - | 0xADuy -> parseEVEXW span phlp vex0F38ADW0 vex0F38ADW1 notEn evex0F38ADW1 - | 0xAEuy -> parseEVEXW span phlp vex0F38AEW0 vex0F38AEW1 notEn notEn - | 0xAFuy -> parseEVEXW span phlp vex0F38AFW0 vex0F38AFW1 notEn notEn - | 0xB4uy -> parseEVEXW span phlp notEn notEn notEn evex0F38B4W1 - | 0xB5uy -> parseEVEXW span phlp notEn notEn notEn evex0F38B5W1 - | 0xB6uy -> parseEVEXW span phlp vex0F38B6W0 vex0F38B6W1 notEn evex0F38B8W1 - | 0xB7uy -> parseEVEXW span phlp vex0F38B7W0 vex0F38B7W1 notEn evex0F38B8W1 - | 0xB8uy -> parseEVEXW span phlp vex0F38B8W0 vex0F38B8W1 notEn evex0F38B8W1 - | 0xB9uy -> parseVEXW span phlp notEn notEn vex0F38B9W0 vex0F38B9W1 - | 0xBAuy -> parseEVEXW span phlp vex0F38BAW0 vex0F38BAW1 notEn notEn - | 0xBBuy -> parseEVEXW span phlp vex0F38BBW0 vex0F38BBW1 notEn evex0F38BBW1 - | 0xBCuy -> parseEVEXW span phlp vex0F38BCW0 vex0F38BCW1 notEn evex0F38BCW1 - | 0xBDuy -> parseEVEXW span phlp vex0F38BDW0 vex0F38BDW1 notEn evex0F38BDW1 - | 0xBEuy -> parseEVEXW span phlp vex0F38BEW0 vex0F38BEW1 notEn notEn - | 0xBFuy -> parseEVEXW span phlp vex0F38BFW0 vex0F38BFW1 notEn notEn - | 0xC6uy when ParsingHelper.IsReg001(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C61W0 evex0F38C61W1 - | 0xC6uy when ParsingHelper.IsReg010(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C62W0 evex0F38C62W1 - | 0xC6uy when ParsingHelper.IsReg101(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C65W0 evex0F38C65W1 - | 0xC6uy when ParsingHelper.IsReg110(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C66W0 evex0F38C66W1 - | 0xC7uy when ParsingHelper.IsReg001(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C71W0 evex0F38C71W1 - | 0xC7uy when ParsingHelper.IsReg010(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C72W0 evex0F38C72W1 - | 0xC7uy when ParsingHelper.IsReg101(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C75W0 evex0F38C75W1 - | 0xC7uy when ParsingHelper.IsReg110(span, phlp) -> - parseEVEXW span phlp notEn notEn evex0F38C76W0 evex0F38C76W1 - | 0xC8uy -> parseVEX span phlp nor0F38C8 notEn - | 0xC9uy -> parseVEX span phlp nor0F38C9 notEn - | 0xCAuy -> parseVEX span phlp nor0F38CA notEn - | 0xCBuy -> parseEVEX span phlp nor0F38CB notEn notEn evex0F38CBW1 - | 0xCCuy -> parseVEX span phlp nor0F38CC notEn - | 0xCDuy -> parseEVEX span phlp nor0F38CD notEn notEn evex0F38CDW1 - | 0xCFuy -> parseEVEXW span phlp evex0F38CFW0 notEn evex0F38CFW0 notEn - | 0xDBuy -> parseVEX span phlp nor0F38DB notEn - | 0xDCuy -> parseEVEX span phlp nor0F38DC vex0F38DC evex0F38DC evex0F38DC - | 0xDDuy -> parseEVEX span phlp nor0F38DD vex0F38DD evex0F38DD evex0F38DD - | 0xDEuy -> parseEVEX span phlp nor0F38DE vex0F38DE evex0F38DE evex0F38DE - | 0xDFuy -> parseEVEX span phlp nor0F38DF vex0F38DF evex0F38DF evex0F38DF - | 0xF0uy -> parseNonVEX span phlp nor0F38F0 - | 0xF1uy -> parseNonVEX span phlp nor0F38F1 - | 0xF2uy -> parseVEX span phlp notEn vex0F38F2 - | 0xF3uy -> - if Option.isNone phlp.VEXInfo then raise ParsingFailureException - else parseGrpOp span phlp OpGroup.G17 OD.VvRm SZ.Def - | 0xF5uy -> - parseVEXW span phlp nor0F38F5W0 nor0F38F5W1 vex0F38F5W0 vex0F38F5W1 - | 0xF6uy -> - parseVEXW span phlp nor0F38F6W0 nor0F38F6W1 vex0F38F6W0 vex0F38F6W1 - | 0xF7uy -> parseVEX span phlp nor0F38F7 vex0F38F7 - | _ -> raise ParsingFailureException - -/// When the first two bytes are 0F3A. -/// Table A-5 of Volume 2 (Three-byte Opcode Map : First Two Bytes are 0F 3AH) -let parseThreeByteOp2 span (phlp: ParsingHelper) = - match phlp.ReadByte span with - | 0x00uy -> parseEVEXW span phlp notEn vex0F3A00W1 notEn notEn - | 0x01uy -> parseEVEXW span phlp notEn vex0F3A01W1 notEn notEn - | 0x02uy -> parseEVEXW span phlp vex0F3A02W0 notEn notEn notEn - | 0x03uy -> parseEVEXW span phlp notEn notEn evex0F3A03W0 evex0F3A03W1 - | 0x04uy -> parseEVEXW span phlp vex0F3A04W0 notEn notEn notEn - | 0x05uy -> parseEVEXW span phlp vex0F3A05W0 notEn notEn notEn - | 0x06uy -> parseVEXW span phlp notEn notEn vex0F3A06W0 notEn - | 0x08uy -> parseVEX span phlp nor0F3A08 vex0F3A08 - | 0x09uy -> parseVEX span phlp nor0F3A09 vex0F3A09 - | 0x0Auy -> parseVEX span phlp nor0F3A0A vex0F3A0A - | 0x0Buy -> parseEVEX span phlp nor0F3A0B vex0F3A0B notEn evex0F3A0BW1 - | 0x0Cuy -> parseVEX span phlp nor0F3A0C vex0F3A0C - | 0x0Duy -> parseVEX span phlp nor0F3A0D vex0F3A0D - | 0x0Euy -> parseVEX span phlp nor0F3A0E vex0F3A0E - | 0x0Fuy -> parseVEX span phlp nor0F3A0F vex0F3A0F - | 0x14uy -> parseVEXW span phlp nor0F3A14 nor0F3A14 vex0F3A14W0 notEn - | 0x15uy -> parseVEX span phlp nor0F3A15 vex0F3A15 - | 0x16uy -> - (* VEX.W/EVEX.W in non-64 bit is ignored; the instructions behaves as - if the W0 version is used. *) - if phlp.WordSize = WordSize.Bit64 then () - else phlp.REXPrefix <- filterREXWPrefs phlp.REXPrefix - parseEVEXAll span phlp nor0F3A16W0 nor0F3A16W1 vex0F3A16W0 vex0F3A16W1 - evex0F3A16W0 evex0F3A16W1 - | 0x17uy -> parseEVEX span phlp nor0F3A17 vex0F3A17 notEn notEn - | 0x18uy -> parseEVEXW span phlp vex0F3A18W0 notEn notEn notEn - | 0x19uy -> parseEVEXW span phlp vex0F3A19W0 notEn evex0F3A19W0 evex0F3A19W1 - | 0x1Auy -> parseEVEXW span phlp notEn notEn notEn evex0F3A1AW1 - | 0x1Buy -> parseEVEXW span phlp notEn notEn evex0F3A1BW0 evex0F3A1BW1 - | 0x1Duy -> parseEVEXW span phlp vex0F3A1DW0 notEn notEn notEn - | 0x1Euy -> parseEVEXW span phlp notEn notEn evex0F3A1EW0 evex0F3A1EW1 - | 0x20uy -> parseVEX span phlp nor0F3A20 vex0F3A20 - | 0x21uy -> parseVEX span phlp nor0F3A21 vex0F3A21 - | 0x22uy -> - parseEVEXAll span phlp nor0F3A22W0 nor0F3A22W1 vex0F3A22W0 vex0F3A22W1 - evex0F3A22W0 evex0F3A22W1 - | 0x25uy -> parseEVEXW span phlp notEn notEn evex0F3A25W0 evex0F3A25W1 - | 0x27uy -> parseEVEXW span phlp notEn notEn notEn evex0F3A27W1 - | 0x30uy -> parseVEXW span phlp notEn notEn vex0F3A30W0 vex0F3A30W1 - | 0x31uy -> parseVEXW span phlp notEn notEn vex0F3A31W0 vex0F3A31W1 - | 0x38uy -> parseVEX span phlp nor0F3A38 vex0F3A38 - | 0x39uy -> parseEVEXW span phlp vex0F3A39W0 notEn evex0F3A39W0 evex0F3A39W1 - | 0x3Auy -> parseEVEXW span phlp notEn notEn evex0F3A3AW0 evex0F3A3AW1 - | 0x3Buy -> parseEVEXW span phlp notEn notEn evex0F3A3BW0 evex0F3A3BW1 - | 0x3Euy -> parseEVEXW span phlp notEn notEn evex0F3A3EW0 evex0F3A3EW1 - | 0x3Fuy -> parseEVEXW span phlp notEn notEn evex0F3A3FW0 evex0F3A3FW1 - | 0x40uy -> parseVEX span phlp nor0F3A40 vex0F3A40 - | 0x41uy -> parseVEX span phlp nor0F3A41 vex0F3A41 - | 0x42uy -> parseVEX span phlp nor0F3A42 vex0F3A42 - | 0x43uy -> parseEVEXW span phlp notEn notEn evex0F3A43W0 evex0F3A43W1 - | 0x44uy -> parseEVEX span phlp nor0F3A44 vex0F3A44 evex0F3A44 evex0F3A44 - | 0x46uy -> parseEVEXW span phlp vex0F3A46W0 notEn notEn notEn - | 0x4Auy -> parseVEXW span phlp notEn notEn vex0F3A4AW0 notEn - | 0x4Buy -> parseVEXW span phlp notEn notEn vex0F3A4BW0 notEn - | 0x4Cuy -> parseVEXW span phlp notEn notEn vex0F3A4CW0 notEn - | 0x57uy -> parseEVEXW span phlp notEn notEn notEn evex0F3A57W1 - | 0x60uy -> parseVEX span phlp nor0F3A60 vex0F3A60 - | 0x61uy -> parseVEX span phlp nor0F3A61 vex0F3A61 - | 0x62uy -> parseVEX span phlp nor0F3A62 vex0F3A62 - | 0x63uy -> parseVEX span phlp nor0F3A63 vex0F3A63 - | 0x68uy -> parseVEXW span phlp notEn notEn vex0F3A68W0 vex0F3A68W1 - | 0x69uy -> parseVEXW span phlp notEn notEn vex0F3A69W0 vex0F3A69W1 - | 0x6Auy -> parseVEXW span phlp notEn notEn vex0F3A6AW0 vex0F3A6AW1 - | 0x6Buy -> parseVEXW span phlp notEn notEn vex0F3A6BW0 vex0F3A6BW1 - | 0x70uy -> parseEVEXW span phlp notEn notEn notEn evex0F3A70W1 - | 0x71uy -> parseEVEXW span phlp notEn notEn evex0F3A71W0 evex0F3A71W1 - | 0x72uy -> parseEVEXW span phlp notEn notEn notEn evex0F3A72W1 - | 0x73uy -> parseEVEXW span phlp notEn notEn evex0F3A73W0 evex0F3A73W1 - | 0xCCuy -> parseVEX span phlp nor0F3ACC notEn - | 0xCEuy -> parseEVEXW span phlp notEn vex0F3ACEW1 notEn evex0F3ACEW1 - | 0xCFuy -> parseEVEXW span phlp notEn vex0F3ACFW1 notEn evex0F3ACFW1 - | 0xDFuy -> parseVEX span phlp nor0F3ADF notEn - | 0xF0uy -> parseVEX span phlp nor0F3AF0 vex0F3AF0 - | _ -> raise ParsingFailureException - -let getOpCode0F0D span (phlp: ParsingHelper) = - let b = phlp.PeekByte span - match Operands.modIsMemory b, Operands.getReg b with - | true, 0b001 -> PREFETCHW - | true, 0b010 -> PREFETCHWT1 - | _ -> raise ParsingFailureException - -let ignOpSz (phlp: ParsingHelper) = - phlp.Prefixes <- phlp.Prefixes &&& EnumOfValue 0xFDFF - phlp - -(* Table A-3 of Volume 2 (Two-byte Opcode Map) *) -let parseTwoByteOpcode span (phlp: ParsingHelper) = - match (phlp.ReadByte span) with - | 0x02uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp LAR SzCond.Normal OD.GprRm SZ.WV - | 0x03uy -> render span phlp LSL SzCond.Normal OD.GprRm SZ.WV - | 0x05uy -> -#if !EMULATION - ensure64 phlp -#endif - render span phlp SYSCALL SzCond.Normal OD.No SZ.Def - | 0x06uy -> render span phlp CLTS SzCond.Normal OD.No SZ.Def - | 0x07uy -> -#if !EMULATION - ensure64 phlp -#endif - render span phlp SYSRET SzCond.Normal OD.No SZ.Def - | 0x08uy -> render span phlp INVD SzCond.Normal OD.No SZ.Def - | 0x09uy -> render span phlp WBINVD SzCond.Normal OD.No SZ.Def - | 0x0Buy -> render span phlp UD2 SzCond.Normal OD.No SZ.Def - | 0x0Duy -> - render span phlp (getOpCode0F0D span phlp) SzCond.Normal OD.Mem SZ.Def - | 0x10uy -> pVEXByMem span phlp nor0F10 nor0F10 vex0F10Mem vex0F10Reg - | 0x11uy -> pVEXByMem span phlp nor0F11 nor0F11 vex0F11Mem vex0F11Reg - | 0x12uy -> pVEXByMem span phlp nor0F12Mem nor0F12Reg vex0F12Mem vex0F12Reg - | 0x13uy -> parseVEX span phlp nor0F13 vex0F13 - | 0x14uy -> parseVEX span phlp nor0F14 vex0F14 - | 0x15uy -> parseVEX span phlp nor0F15 vex0F15 - | 0x16uy -> pVEXByMem span phlp nor0F16Mem nor0F16Reg vex0F16Mem vex0F16Reg - | 0x17uy -> parseVEX span phlp nor0F17 vex0F17 - | 0x1Auy -> parseBND span phlp SzCond.Normal nor0F1A - | 0x1Buy -> parseBND span phlp SzCond.Normal nor0F1B - | 0x1Euy -> - if Prefix.hasREPZ phlp.Prefixes then parseCETInstr span phlp - else raise InvalidOpcodeException - | 0x1Fuy -> render span phlp NOP SzCond.Normal OD.Mem SZ.Def (* NOP /0 Ev *) - | 0x20uy -> render span phlp MOV SzCond.F64 OD.GprCtrl SZ.DY - | 0x21uy -> render span phlp MOV SzCond.Normal OD.GprDbg SZ.DY - | 0x22uy -> render span phlp MOV SzCond.Normal OD.CtrlGpr SZ.DY - | 0x23uy -> render span phlp MOV SzCond.Normal OD.DbgGpr SZ.DY - | 0x28uy -> parseVEX span phlp nor0F28 vex0F28 - | 0x29uy -> parseVEX span phlp nor0F29 vex0F29 - | 0x2Auy -> parseVEX span phlp nor0F2A vex0F2A - | 0x2Buy -> parseVEX span phlp nor0F2B vex0F2B - | 0x2Cuy -> parseVEX span phlp nor0F2C vex0F2C - | 0x2Duy -> parseVEX span phlp nor0F2D vex0F2D - | 0x2Euy -> parseVEX span phlp nor0F2E vex0F2E - | 0x2Fuy -> parseVEX span phlp nor0F2F vex0F2F - | 0x30uy -> render span phlp WRMSR SzCond.Normal OD.No SZ.Def - | 0x31uy -> render span phlp RDTSC SzCond.Normal OD.No SZ.Def - | 0x32uy -> render span phlp RDMSR SzCond.Normal OD.No SZ.Def - | 0x33uy -> render span phlp RDPMC SzCond.Normal OD.No SZ.Def - | 0x34uy -> render span phlp SYSENTER SzCond.Normal OD.No SZ.Def - | 0x35uy -> render span phlp SYSEXIT SzCond.Normal OD.No SZ.Def - | 0x37uy -> render span phlp GETSEC SzCond.Normal OD.No SZ.Def - | 0x40uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVO SzCond.Normal OD.GprRm SZ.Def - | 0x41uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVNO SzCond.Normal OD.GprRm SZ.Def - | 0x42uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVB SzCond.Normal OD.GprRm SZ.Def - | 0x43uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVAE SzCond.Normal OD.GprRm SZ.Def - | 0x44uy -> - if phlp.VEXInfo.IsSome then - parseVEXW span phlp notEn notEn vex0F44W0 vex0F44W1 - else render span phlp CMOVZ SzCond.Normal OD.GprRm SZ.Def - | 0x45uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVNZ SzCond.Normal OD.GprRm SZ.Def - | 0x46uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVBE SzCond.Normal OD.GprRm SZ.Def - | 0x47uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVA SzCond.Normal OD.GprRm SZ.Def - | 0x48uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVS SzCond.Normal OD.GprRm SZ.Def - | 0x49uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVNS SzCond.Normal OD.GprRm SZ.Def - | 0x4Auy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVP SzCond.Normal OD.GprRm SZ.Def - | 0x4Buy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVNP SzCond.Normal OD.GprRm SZ.Def - | 0x4Cuy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVL SzCond.Normal OD.GprRm SZ.Def - | 0x4Duy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVGE SzCond.Normal OD.GprRm SZ.Def - | 0x4Euy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVLE SzCond.Normal OD.GprRm SZ.Def - | 0x4Fuy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp CMOVG SzCond.Normal OD.GprRm SZ.Def - | 0x50uy -> parseVEX span phlp nor0F50 vex0F50 - | 0x51uy -> parseVEX span phlp nor0F51 vex0F51 - | 0x52uy -> parseVEX span phlp nor0F52 vex0F52 - | 0x53uy -> parseVEX span phlp nor0F53 vex0F53 - | 0x54uy -> parseVEX span phlp nor0F54 vex0F54 - | 0x55uy -> parseVEX span phlp nor0F55 vex0F55 - | 0x56uy -> parseVEX span phlp nor0F56 vex0F56 - | 0x57uy -> parseVEX span phlp nor0F57 vex0F57 - | 0x58uy -> parseEVEX span phlp nor0F58 vex0F58 evex0F58W0 evex0F58W1 - | 0x59uy -> parseVEX span phlp nor0F59 vex0F59 - | 0x5Auy -> parseEVEX span phlp nor0F5A vex0F5A evex0F5AW0 evex0F5AW1 - | 0x5Buy -> parseVEX span phlp nor0F5B vex0F5B - | 0x5Cuy -> parseVEX span phlp nor0F5C vex0F5C - | 0x5Duy -> parseEVEX span phlp nor0F5D vex0F5D evex0F5DW0 notEn - | 0x5Euy -> parseVEX span phlp nor0F5E vex0F5E - | 0x5Fuy -> parseEVEX span phlp nor0F5F vex0F5F evex0F5FW0 evex0F5FW1 - | 0x60uy -> parseVEX span phlp nor0F60 vex0F60 - | 0x61uy -> parseVEX span phlp nor0F61 vex0F61 - | 0x62uy -> parseVEX span phlp nor0F62 vex0F62 - | 0x63uy -> parseVEX span phlp nor0F63 vex0F63 - | 0x64uy -> parseVEX span phlp nor0F64 vex0F64 - | 0x65uy -> parseVEX span phlp nor0F65 vex0F65 - | 0x66uy -> parseVEX span phlp nor0F66 vex0F66 - | 0x67uy -> parseVEX span phlp nor0F67 vex0F67 - | 0x68uy -> parseVEX span phlp nor0F68 vex0F68 - | 0x69uy -> parseVEX span phlp nor0F69 vex0F69 - | 0x6Auy -> parseVEX span phlp nor0F6A vex0F6A - | 0x6Buy -> parseVEX span phlp nor0F6B vex0F6B - | 0x6Cuy -> parseVEX span phlp nor0F6C vex0F6C - | 0x6Duy -> parseVEX span phlp nor0F6D vex0F6D - | 0x6Euy -> parseVEXW span phlp nor0F6EW0 nor0F6EW1 vex0F6EW0 vex0F6EW1 - | 0x6Fuy -> parseEVEX span phlp nor0F6F vex0F6F evex0F6FW0 evex0F6FW1 - | 0x70uy -> parseVEX span phlp nor0F70 vex0F70 - | 0x74uy -> parseEVEX span phlp nor0F74 vex0F74 evex0F74 evex0F74 - | 0x75uy -> parseEVEX span phlp nor0F75 vex0F75 evex0F75 evex0F75 - | 0x76uy -> parseVEX span phlp nor0F76 vex0F76 - | 0x77uy -> parseVEX span phlp nor0F77 vex0F77 - | 0x78uy -> parseEVEX span phlp nor0F78 notEn evex0F78W0 evex0F78W1 - | 0x7Auy -> parseEVEX span phlp notEn notEn evex0F7AW0 evex0F7AW1 - | 0x7Buy -> parseEVEXW span phlp notEn notEn evex0F7BW0 evex0F7BW1 - | 0x7Cuy -> parseVEX span phlp nor0F7C vex0F7C - | 0x7Duy -> parseVEX span phlp nor0F7D vex0F7D - | 0x7Euy -> parseVEXW span phlp nor0F7EW0 nor0F7EW1 vex0F7EW0 vex0F7EW1 - | 0x7Fuy -> parseEVEX span phlp nor0F7F vex0F7F evex0F7FW0 evex0F7FW1 - | 0x80uy -> addBND phlp; render span phlp JO SzCond.F64 OD.Rel SZ.D64 - | 0x81uy -> addBND phlp; render span phlp JNO SzCond.F64 OD.Rel SZ.D64 - | 0x82uy -> addBND phlp; render span phlp JB SzCond.F64 OD.Rel SZ.D64 - | 0x83uy -> addBND phlp; render span phlp JNB SzCond.F64 OD.Rel SZ.D64 - | 0x84uy -> addBND phlp; render span phlp JZ SzCond.F64 OD.Rel SZ.D64 - | 0x85uy -> addBND phlp; render span phlp JNZ SzCond.F64 OD.Rel SZ.D64 - | 0x86uy -> addBND phlp; render span phlp JBE SzCond.F64 OD.Rel SZ.D64 - | 0x87uy -> addBND phlp; render span phlp JA SzCond.F64 OD.Rel SZ.D64 - | 0x88uy -> addBND phlp; render span phlp JS SzCond.F64 OD.Rel SZ.D64 - | 0x89uy -> addBND phlp; render span phlp JNS SzCond.F64 OD.Rel SZ.D64 - | 0x8Auy -> addBND phlp; render span phlp JP SzCond.F64 OD.Rel SZ.D64 - | 0x8Buy -> addBND phlp; render span phlp JNP SzCond.F64 OD.Rel SZ.D64 - | 0x8Cuy -> addBND phlp; render span phlp JL SzCond.F64 OD.Rel SZ.D64 - | 0x8Duy -> addBND phlp; render span phlp JNL SzCond.F64 OD.Rel SZ.D64 - | 0x8Euy -> addBND phlp; render span phlp JLE SzCond.F64 OD.Rel SZ.D64 - | 0x8Fuy -> addBND phlp; render span phlp JG SzCond.F64 OD.Rel SZ.D64 - | 0x90uy -> parseVEXW span phlp nor0F90 nor0F90 vex0F90W0 vex0F90W1 - | 0x91uy -> parseVEXW span phlp nor0F91 nor0F91 vex0F91W0 vex0F91W1 - | 0x92uy -> parseVEXW span phlp nor0F92 nor0F92 vex0F92W0 vex0F92W1 - | 0x93uy -> parseVEXW span phlp nor0F93 nor0F93 vex0F93W0 vex0F93W1 - | 0x94uy -> render span phlp SETZ SzCond.Normal OD.Mem SZ.Byte - | 0x95uy -> render span phlp SETNZ SzCond.Normal OD.Mem SZ.Byte - | 0x96uy -> render span phlp SETBE SzCond.Normal OD.Mem SZ.Byte - | 0x97uy -> render span phlp SETA SzCond.Normal OD.Mem SZ.Byte - | 0x98uy -> parseVEXW span phlp nor0F98 nor0F98 vex0F98W0 vex0F98W1 - | 0x99uy -> render span phlp SETNS SzCond.Normal OD.Mem SZ.Byte - | 0x9Auy -> render span phlp SETP SzCond.Normal OD.Mem SZ.Byte - | 0x9Buy -> render span phlp SETNP SzCond.Normal OD.Mem SZ.Byte - | 0x9Cuy -> render span phlp SETL SzCond.Normal OD.Mem SZ.Byte - | 0x9Duy -> render span phlp SETNL SzCond.Normal OD.Mem SZ.Byte - | 0x9Euy -> render span phlp SETLE SzCond.Normal OD.Mem SZ.Byte - | 0x9Fuy -> render span phlp SETG SzCond.Normal OD.Mem SZ.Byte - | 0xA0uy -> render span phlp PUSH SzCond.D64 OD.Fs SZ.RegW - | 0xA1uy -> render span phlp POP SzCond.D64 OD.Fs SZ.RegW - | 0xA2uy -> render span phlp CPUID SzCond.Normal OD.No SZ.Def - | 0xA3uy -> render span phlp BT SzCond.Normal OD.RmGpr SZ.Def - | 0xA4uy -> render span phlp SHLD SzCond.Normal OD.XmRegImm8 SZ.Def - | 0xA5uy -> render span phlp SHLD SzCond.Normal OD.RmGprCL SZ.Def - | 0xA6uy -> parsePadLockInstr1 span phlp - | 0xA7uy -> parsePadLockInstr2 span phlp - | 0xA8uy -> render span phlp PUSH SzCond.D64 OD.Gs SZ.RegW - | 0xA9uy -> render span phlp POP SzCond.D64 OD.Gs SZ.RegW - | 0xAAuy -> render span phlp RSM SzCond.Normal OD.No SZ.Def - | 0xABuy -> render span phlp BTS SzCond.Normal OD.RmGpr SZ.Def - | 0xACuy -> render span phlp SHRD SzCond.Normal OD.XmRegImm8 SZ.Def - | 0xADuy -> render span phlp SHRD SzCond.Normal OD.RmGprCL SZ.Def - | 0xAFuy -> render span phlp IMUL SzCond.Normal OD.GprRm SZ.Def - | 0xB0uy -> render span phlp CMPXCHG SzCond.Normal OD.RmGpr SZ.Byte - | 0xB1uy -> render span phlp CMPXCHG SzCond.Normal OD.RmGpr SZ.Def - | 0xB2uy -> render span phlp LSS SzCond.Normal OD.GprM SZ.PRM - | 0xB3uy -> render span phlp BTR SzCond.Normal OD.RmGpr SZ.Def - | 0xB4uy -> render span phlp LFS SzCond.Normal OD.GprM SZ.PRM - | 0xB5uy -> render span phlp LGS SzCond.Normal OD.GprM SZ.PRM - | 0xB6uy -> render span phlp MOVZX SzCond.Normal OD.GprRm SZ.BV - | 0xB7uy -> render span phlp MOVZX SzCond.Normal OD.GprRm SZ.WV - | 0xB8uy when not <| Prefix.hasREPZ phlp.Prefixes -> - raise ParsingFailureException - | 0xB8uy -> - phlp.Prefixes <- filterREPZPrefs phlp.Prefixes - render span phlp POPCNT SzCond.Normal OD.GprRm SZ.Def - | 0xB9uy -> render span phlp UD1 SzCond.Normal OD.GprRm SZ.Def - | 0xBBuy when Prefix.hasREPZ phlp.Prefixes -> raise ParsingFailureException - | 0xBBuy -> render span phlp BTC SzCond.Normal OD.RmGpr SZ.Def - | 0xBCuy when Prefix.hasREPZ phlp.Prefixes -> - phlp.Prefixes <- filterREPZPrefs phlp.Prefixes - render span phlp TZCNT SzCond.Normal OD.GprRm SZ.Def - | 0xBCuy -> render span phlp BSF SzCond.Normal OD.GprRm SZ.Def - | 0xBDuy when Prefix.hasREPZ phlp.Prefixes -> - phlp.Prefixes <- filterREPZPrefs phlp.Prefixes - render span phlp LZCNT SzCond.Normal OD.GprRm SZ.Def - | 0xBDuy -> render span phlp BSR SzCond.Normal OD.GprRm SZ.Def - | 0xBEuy -> render span phlp MOVSX SzCond.Normal OD.GprRm SZ.BV - | 0xBFuy -> render span phlp MOVSX SzCond.Normal OD.GprRm SZ.WV - | 0xC0uy -> render span phlp XADD SzCond.Normal OD.RmGpr SZ.Byte - | 0xC1uy -> render span phlp XADD SzCond.Normal OD.RmGpr SZ.Def - | 0xC2uy -> parseEVEX span phlp nor0FC2 vex0FC2 evex0FC2W0 evex0FC2W1 - | 0xC3uy -> - if phlp.VEXInfo.IsSome then raise ParsingFailureException - else render span phlp MOVNTI SzCond.Normal OD.RmGpr SZ.Def - | 0xC4uy -> parseVEX span phlp nor0FC4 vex0FC4 - | 0xC5uy -> parseVEX span phlp nor0FC5 vex0FC5 - | 0xC6uy -> parseVEX span phlp nor0FC6 vex0FC6 - | 0xC7uy when ParsingHelper.IsReg111(span, phlp) -> - render span phlp RDSEED SzCond.Normal OD.Gpr SZ.Def - | 0xC8uy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rax SZ.Def - | 0xC9uy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rcx SZ.Def - | 0xCAuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rdx SZ.Def - | 0xCBuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rbx SZ.Def - | 0xCCuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rsp SZ.Def - | 0xCDuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rbp SZ.Def - | 0xCEuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rsi SZ.Def - | 0xCFuy -> render span (ignOpSz phlp) BSWAP SzCond.Normal OD.Rdi SZ.Def - | 0xD0uy -> parseVEX span phlp nor0FD0 vex0FD0 - | 0xD1uy -> parseVEX span phlp nor0FD1 vex0FD1 - | 0xD2uy -> parseVEX span phlp nor0FD2 vex0FD2 - | 0xD3uy -> parseVEX span phlp nor0FD3 vex0FD3 - | 0xD4uy -> parseVEX span phlp nor0FD4 vex0FD4 - | 0xD5uy -> parseVEX span phlp nor0FD5 vex0FD5 - | 0xD6uy -> -#if !EMULATION - ensureVEX128 phlp -#endif - parseVEX span phlp nor0FD6 vex0FD6 - | 0xD7uy -> parseVEX span phlp nor0FD7 vex0FD7 - | 0xD8uy -> parseVEX span phlp nor0FD8 vex0FD8 - | 0xD9uy -> parseVEX span phlp nor0FD9 vex0FD9 - | 0xDAuy -> parseVEX span phlp nor0FDA vex0FDA - | 0xDBuy -> parseEVEX span phlp nor0FDB vex0FDB evex0FDBW0 evex0FDBW1 - | 0xDCuy -> parseVEX span phlp nor0FDC vex0FDC - | 0xDDuy -> parseVEX span phlp nor0FDD vex0FDD - | 0xDEuy -> parseVEX span phlp nor0FDE vex0FDE - | 0xDFuy -> parseVEX span phlp nor0FDF vex0FDF - | 0xE0uy -> parseVEX span phlp nor0FE0 vex0FE0 - | 0xE1uy -> parseVEX span phlp nor0FE1 vex0FE1 - | 0xE2uy -> parseVEX span phlp nor0FE2 vex0FE2 - | 0xE3uy -> parseVEX span phlp nor0FE3 vex0FE3 - | 0xE4uy -> parseVEX span phlp nor0FE4 vex0FE4 - | 0xE5uy -> parseVEX span phlp nor0FE5 vex0FE5 - | 0xE6uy -> parseEVEX span phlp nor0FE6 vex0FE6 evex0FE6W0 evex0FE6W1 - | 0xE7uy -> parseEVEX span phlp nor0FE7 vex0FE7 evex0FE7W0 evex0FE7W1 - | 0xE8uy -> parseVEX span phlp nor0FE8 vex0FE8 - | 0xE9uy -> parseVEX span phlp nor0FE9 vex0FE9 - | 0xEAuy -> parseVEX span phlp nor0FEA vex0FEA - | 0xEBuy -> parseEVEX span phlp nor0FEB vex0FEB evex0FEBW0 evex0FEBW1 - | 0xECuy -> parseVEX span phlp nor0FEC vex0FEC - | 0xEDuy -> parseVEX span phlp nor0FED vex0FED - | 0xEEuy -> parseVEX span phlp nor0FEE vex0FEE - | 0xEFuy -> parseEVEX span phlp nor0FEF vex0FEF evex0FEFW0 evex0FEFW1 - | 0xF0uy -> parseVEX span phlp nor0FF0 vex0FF0 - | 0xF1uy -> parseVEX span phlp nor0FF1 vex0FF1 - | 0xF2uy -> parseVEX span phlp nor0FF2 vex0FF2 - | 0xF3uy -> parseVEX span phlp nor0FF3 vex0FF3 - | 0xF4uy -> parseVEX span phlp nor0FF4 vex0FF4 - | 0xF5uy -> parseVEX span phlp nor0FF5 vex0FF5 - | 0xF6uy -> parseVEX span phlp nor0FF6 vex0FF6 - | 0xF7uy -> parseVEX span phlp nor0FF7 vex0FF7 - | 0xF8uy -> parseVEX span phlp nor0FF8 vex0FF8 - | 0xF9uy -> parseVEX span phlp nor0FF9 vex0FF9 - | 0xFAuy -> parseVEX span phlp nor0FFA vex0FFA - | 0xFBuy -> parseVEX span phlp nor0FFB vex0FFB - | 0xFCuy -> parseVEX span phlp nor0FFC vex0FFC - | 0xFDuy -> parseVEX span phlp nor0FFD vex0FFD - | 0xFEuy -> parseVEX span phlp nor0FFE vex0FFE - | 0xFFuy -> render span phlp UD0 SzCond.Normal OD.GprRm SZ.Def - | 0x00uy -> parseGrpOp span phlp OpGroup.G6 OD.No SZ.Def - | 0x01uy -> parseGrpOp span phlp OpGroup.G7 OD.No SZ.Def - | 0xBAuy -> parseGrpOp span phlp OpGroup.G8 OD.RmSImm8 SZ.Def - | 0xC7uy -> parseGrpOp span phlp OpGroup.G9 OD.No SZ.Def - | 0x71uy -> parseGrpOp span phlp OpGroup.G12 OD.No SZ.Def - | 0x72uy -> parseGrpOp span phlp OpGroup.G13 OD.No SZ.Def - | 0x73uy -> parseGrpOp span phlp OpGroup.G14 OD.No SZ.Def - | 0xAEuy -> parseGrpOp span phlp OpGroup.G15 OD.No SZ.Def - | 0x18uy -> parseGrpOp span phlp OpGroup.G16 OD.Mem SZ.Def - | 0x38uy -> parseThreeByteOp1 span phlp - | 0x3Auy -> parseThreeByteOp2 span phlp - | _ -> raise ParsingFailureException + //match sidx with + //| SizeKind.VecDefRC -> + // (phlp: ParsingHelper).SzComputers[int sidx].RenderEVEX(span, phlp, szCond) + //| _ -> (phlp: ParsingHelper).SzComputers[int sidx].Render(phlp, szCond) + //exceptionHandling opcode phlp + //let oprs = phlp.OprParsers[int oidx].Render(span, phlp) + //newInstruction phlp opcode oprs + newInstruction phlp opcode NoOperand diff --git a/src/FrontEnd/Intel/ParsingHelper.fs b/src/FrontEnd/Intel/ParsingHelper.fs index cf7172c06..50e38573a 100644 --- a/src/FrontEnd/Intel/ParsingHelper.fs +++ b/src/FrontEnd/Intel/ParsingHelper.fs @@ -34,8 +34,6 @@ type internal ParsingHelper(reader: IBinReader, rex, vex, wordSz, - ops, - szs, lifter) = let mutable addr: Addr = addr let mutable cpos: int = cpos (* current position *) @@ -49,11 +47,12 @@ type internal ParsingHelper(reader: IBinReader, let mutable regSz = 0 let mutable operationSz = 0 let mutable tupleType = TupleType.NA + let mutable opcodeClass = Normal OpcodeMap.OneByte let mutable isFar = false - new(reader, wordSz, oparsers, szcomputers, lifter) = + new(reader, wordSz, lifter) = ParsingHelper(reader, 0UL, 0, Prefix.None, REXPrefix.NOREX, None, - wordSz, oparsers, szcomputers, lifter) + wordSz, lifter) member _.InsAddr with get(): Addr = addr and set a = addr <- a member _.CurrPos with get() = cpos and set p = cpos <- p @@ -61,8 +60,6 @@ type internal ParsingHelper(reader: IBinReader, member _.REXPrefix with get(): REXPrefix = rex and set r = rex <- r member _.VEXInfo with get(): VEXInfo option = vex and set v = vex <- v member _.WordSize with get(): WordSize = wordSize and set w = wordSize <- w - member _.OprParsers with get(): OperandParser[] = ops - member _.SzComputers with get(): InsSizeComputer[] = szs member _.MemEffOprSize with get() = memOprSz and set s = memOprSz <- s member _.MemEffAddrSize with get() = memAddrSz and set s = memAddrSz <- s member _.MemEffRegSize with get() = memRegSz and set s = memRegSz <- s @@ -70,6 +67,8 @@ type internal ParsingHelper(reader: IBinReader, member _.OperationSize with get() = operationSz and set s = operationSz <- s member _.TupleType with get(): TupleType = tupleType and set t = tupleType <- t + member _.OpcodeClass + with get(): OpcodeClass = opcodeClass and set c = opcodeClass <- c member _.Lifter with get(): ILiftable = lifter member _.IsFar with get() = isFar and set f = isFar <- f diff --git a/src/FrontEnd/Intel/ParsingJob.fs b/src/FrontEnd/Intel/ParsingJob.fs index a9ad8ed12..c8413ccff 100644 --- a/src/FrontEnd/Intel/ParsingJob.fs +++ b/src/FrontEnd/Intel/ParsingJob.fs @@ -29,2061 +29,3 @@ open B2R2.FrontEnd.BinLifter open B2R2.FrontEnd.Intel open B2R2.FrontEnd.Intel.ParsingFunctions open LanguagePrimitives - -[] -type internal ParsingJob() = - abstract Run: ByteSpan * ParsingHelper -> Instruction - -type internal OneOp00() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp01() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp02() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp03() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp04() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp05() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.ADD oprs - -type internal OneOp06() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Es].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp07() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Es].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp08() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp09() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp0A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp0B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp0C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp0D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.OR oprs - -type internal OneOp0E() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Cs].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp0F() = - inherit ParsingJob() - override _.Run(span, phlp) = parseTwoByteOpcode span phlp - -type internal OneOp10() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp11() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp12() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp13() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp14() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp15() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.ADC oprs - -type internal OneOp16() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Ss].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp17() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Ss].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp18() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp19() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp1A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp1B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp1C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp1D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.SBB oprs - -type internal OneOp1E() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Ds].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp1F() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.RegW].Render(phlp, SzCond.Normal) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Ds].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp20() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp21() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp22() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp23() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp24() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp25() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.AND oprs - -type internal OneOp26() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp27() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.DAA oprs - -type internal OneOp28() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp29() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp2A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp2B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp2C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp2D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.SUB oprs - -type internal OneOp2E() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp2F() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.DAS oprs - -type internal OneOp30() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp31() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp32() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp33() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp34() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp35() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.XOR oprs - -type internal OneOp36() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp37() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.AAA oprs - -type internal OneOp38() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp39() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp3A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp3B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp3C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp3D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.CMP oprs - -type internal OneOp3E() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp3F() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.AAS oprs - -type internal OneOp40() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Eax].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp41() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ecx].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp42() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Edx].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp43() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ebx].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp44() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Esp].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp45() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ebp].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp46() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Esi].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp47() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Edi].Render(span, phlp) - newInstruction phlp Opcode.INC oprs - -type internal OneOp48() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Eax].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp49() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ecx].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4A() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Edx].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4B() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ebx].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4C() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Esp].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4D() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Ebp].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4E() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Esi].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp4F() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Edi].Render(span, phlp) - newInstruction phlp Opcode.DEC oprs - -type internal OneOp50() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rax].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp51() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rcx].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp52() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rdx].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp53() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rbx].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp54() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rsp].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp55() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rbp].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp56() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rsi].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp57() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rdi].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp58() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rax].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp59() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rcx].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rdx].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rbx].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rsp].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rbp].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5E() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rsi].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp5F() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Rdi].Render(span, phlp) - newInstruction phlp Opcode.POP oprs - -type internal OneOp60() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.PUSHA SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.PUSHAD SzCond.Normal OD.No SZ.Def - -type internal OneOp61() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.POPA SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.POPAD SzCond.Normal OD.No SZ.Def - -type internal OneOp62() = - inherit ParsingJob() - override _.Run(span, phlp) = - if (phlp.WordSize = WordSize.Bit64) || (phlp.PeekByte span >= 0xC0uy) then - let mutable rex = phlp.REXPrefix - let vInfo = getEVEXInfo span &rex phlp.CurrPos - phlp.VEXInfo <- Some vInfo - phlp.REXPrefix <- rex - phlp.CurrPos <- phlp.CurrPos + 3 - match vInfo.VEXType &&& EnumOfValue 7 with - | VEXType.TwoByteOp -> parseTwoByteOpcode span phlp - | VEXType.ThreeByteOpOne -> parseThreeByteOp1 span phlp - | VEXType.ThreeByteOpTwo -> parseThreeByteOp2 span phlp - | _ -> raise ParsingFailureException - else - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprM].Render(span, phlp) - newInstruction phlp Opcode.BOUND oprs - -type internal OneOp63() = - inherit ParsingJob() - override _.Run(span, phlp) = - if ParsingHelper.Is64bit phlp then - render span phlp Opcode.MOVSXD SzCond.Normal OD.GprRm SZ.DV - else render span phlp Opcode.ARPL SzCond.Normal OD.RmGpr SZ.Word - -type internal OneOp64() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp65() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp66() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp67() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOp68() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.Imm].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp69() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRmImm].Render(span, phlp) - newInstruction phlp Opcode.IMUL oprs - -type internal OneOp6A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.D64) - phlp.OperationSize <- phlp.MemEffOprSize - let oprs = phlp.OprParsers[int OD.SImm8].Render(span, phlp) - newInstruction phlp Opcode.PUSH oprs - -type internal OneOp6B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRmImm8].Render(span, phlp) - newInstruction phlp Opcode.IMUL oprs - -type internal OneOp6C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.INSB oprs - -type internal OneOp6D() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.INSW SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.INSD SzCond.Normal OD.No SZ.Def - -type internal OneOp6E() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.OUTSB oprs - -type internal OneOp6F() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.OUTSW SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.OUTSD SzCond.Normal OD.No SZ.Def - -type internal OneOp70() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JO oprs - -type internal OneOp71() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNO oprs - -type internal OneOp72() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JB oprs - -type internal OneOp73() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNB oprs - -type internal OneOp74() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JZ oprs - -type internal OneOp75() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNZ oprs - -type internal OneOp76() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JBE oprs - -type internal OneOp77() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JA oprs - -type internal OneOp78() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JS oprs - -type internal OneOp79() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNS oprs - -type internal OneOp7A() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JP oprs - -type internal OneOp7B() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNP oprs - -type internal OneOp7C() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JL oprs - -type internal OneOp7D() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JNL oprs - -type internal OneOp7E() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JLE oprs - -type internal OneOp7F() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JG oprs - -type internal OneOp80() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Byte OpGroup.G1 - render span phlp op szCond oidx szidx - -type internal OneOp81() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmImm SZ.Def OpGroup.G1 - render span phlp op szCond oidx szidx - -type internal OneOp82() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Byte OpGroup.G1Inv64 - render span phlp op szCond oidx szidx - -type internal OneOp83() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Def OpGroup.G1 - render span phlp op szCond oidx szidx - -type internal OneOp84() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.TEST oprs - -type internal OneOp85() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.TEST oprs - -type internal OneOp86() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp87() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp88() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp89() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmGpr].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp8A() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp8B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprRm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp8C() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Word].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RmSeg].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp8D() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprM].Render(span, phlp) - newInstruction phlp Opcode.LEA oprs - -type internal OneOp8E() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Word].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.SegRm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOp8F() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.Mem SZ.Def OpGroup.G1A - render span phlp op szCond oidx szidx - -type internal OneOp90() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasREPZ phlp.Prefixes then - render span phlp Opcode.PAUSE SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasB phlp.REXPrefix then - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRax].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - else render span phlp Opcode.NOP SzCond.Normal OD.No SZ.Def - -type internal OneOp91() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRcx].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp92() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRdx].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp93() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRbx].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp94() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRsp].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp95() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRbp].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp96() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRsi].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp97() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxRdi].Render(span, phlp) - newInstruction phlp Opcode.XCHG oprs - -type internal OneOp98() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.CBW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.CDQE SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.CWDE SzCond.Normal OD.No SZ.Def - -type internal OneOp99() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.CWD SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.CQO SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.CDQ SzCond.Normal OD.No SZ.Def - -type internal OneOp9A() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - addBND phlp - phlp.SzComputers[int SZ.P].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Dir].Render(span, phlp) - phlp.IsFar <- true - newInstruction phlp Opcode.CALL oprs - -type internal OneOp9B() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.WAIT oprs - -type internal OneOp9C() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - let szcond = - if ParsingHelper.Is64bit phlp then SzCond.D64 else SzCond.Normal - render span phlp Opcode.PUSHF szcond OD.No SZ.Def - elif ParsingHelper.Is64bit phlp then - render span phlp Opcode.PUSHFQ SzCond.D64 OD.No SZ.Def - else render span phlp Opcode.PUSHFD SzCond.Normal OD.No SZ.Def - -type internal OneOp9D() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - let szcond = - if ParsingHelper.Is64bit phlp then SzCond.D64 else SzCond.Normal - render span phlp Opcode.POPF szcond OD.No SZ.Def - elif ParsingHelper.Is64bit phlp then - render span phlp Opcode.POPFQ SzCond.D64 OD.No SZ.Def - else render span phlp Opcode.POPFD SzCond.Normal OD.No SZ.Def - -type internal OneOp9E() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.SAHF oprs - -type internal OneOp9F() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.LAHF oprs - -type internal OneOpA0() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxFar].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpA1() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxFar].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpA2() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.FarRax].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpA3() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.FarRax].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpA4() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - if Prefix.hasREPNZ phlp.Prefixes then raise ParsingFailureException - else newInstruction phlp Opcode.MOVSB oprs - -type internal OneOpA5() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.MOVSW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.MOVSQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.MOVSD SzCond.Normal OD.No SZ.Def - -type internal OneOpA6() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.CMPSB oprs - -type internal OneOpA7() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.CMPSW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.CMPSQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.CMPSD SzCond.Normal OD.No SZ.Def - -type internal OneOpA8() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.TEST oprs - -type internal OneOpA9() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm].Render(span, phlp) - newInstruction phlp Opcode.TEST oprs - -type internal OneOpAA() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.STOSB oprs - -type internal OneOpAB() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.STOSW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.STOSQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.STOSD SzCond.Normal OD.No SZ.Def - -type internal OneOpAC() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.LODSB oprs - -type internal OneOpAD() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.LODSW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.LODSQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.LODSD SzCond.Normal OD.No SZ.Def - -type internal OneOpAE() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - phlp.OperationSize <- 8 - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.SCASB oprs - -type internal OneOpAF() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.SCASW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.SCASQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.SCASD SzCond.Normal OD.No SZ.Def - -type internal OneOpB0() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.ALImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB1() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.CLImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB2() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.DLImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB3() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.BLImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB4() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.AhImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB5() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.ChImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB6() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.DhImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB7() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.BhImm8].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB8() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RaxImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpB9() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RcxImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBA() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RdxImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBB() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RbxImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBC() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RspImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBD() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RbpImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBE() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RsiImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpBF() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RdiImm].Render(span, phlp) - newInstruction phlp Opcode.MOV oprs - -type internal OneOpC0() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Byte OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpC1() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Def OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpC2() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Imm16].Render(span, phlp) - newInstruction phlp Opcode.RET oprs - -type internal OneOpC3() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.RET oprs - -type internal OneOpC4() = - inherit ParsingJob() - override _.Run(span, phlp) = - if (phlp.WordSize = WordSize.Bit64) || (phlp.PeekByte span >= 0xC0uy) then - let mutable rex = phlp.REXPrefix - let vInfo = getThreeVEXInfo span &rex phlp.CurrPos - phlp.VEXInfo <- Some vInfo - phlp.REXPrefix <- rex - phlp.CurrPos <- phlp.CurrPos + 2 - match vInfo.VEXType with - | VEXType.TwoByteOp -> parseTwoByteOpcode span phlp - | VEXType.ThreeByteOpOne -> parseThreeByteOp1 span phlp - | VEXType.ThreeByteOpTwo -> parseThreeByteOp2 span phlp - | _ -> raise ParsingFailureException - else - phlp.SzComputers[int SZ.PZ].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprM].Render(span, phlp) - newInstruction phlp Opcode.LES oprs - -type internal OneOpC5() = - inherit ParsingJob() - override _.Run(span, phlp) = - if (phlp.WordSize = WordSize.Bit64) || (phlp.PeekByte span >= 0xC0uy) then - let mutable rex = phlp.REXPrefix - phlp.VEXInfo <- Some(getTwoVEXInfo span &rex phlp.CurrPos) - phlp.REXPrefix <- rex - phlp.CurrPos <- phlp.CurrPos + 1 - parseTwoByteOpcode span phlp - else - phlp.SzComputers[int SZ.PZ].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.GprM].Render(span, phlp) - newInstruction phlp Opcode.LDS oprs - -type internal OneOpC6() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmSImm8 SZ.Byte OpGroup.G11A - render span phlp op szCond oidx szidx - -type internal OneOpC7() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmImm SZ.Def OpGroup.G11B - render span phlp op szCond oidx szidx - -type internal OneOpC8() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.ImmImm].Render(span, phlp) - newInstruction phlp Opcode.ENTER oprs - -type internal OneOpC9() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.D64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.LEAVE oprs - -type internal OneOpCA() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm16].Render(span, phlp) - phlp.IsFar <- true - newInstruction phlp Opcode.RET oprs - -type internal OneOpCB() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - phlp.IsFar <- true - newInstruction phlp Opcode.RET oprs - -type internal OneOpCC() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.INT3 oprs - -type internal OneOpCD() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm8].Render(span, phlp) - newInstruction phlp Opcode.INT oprs - -type internal OneOpCE() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.INTO oprs - -type internal OneOpCF() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasOprSz phlp.Prefixes then - render span phlp Opcode.IRETW SzCond.Normal OD.No SZ.Def - elif REXPrefix.hasW phlp.REXPrefix then - render span phlp Opcode.IRETQ SzCond.Normal OD.No SZ.Def - else render span phlp Opcode.IRETD SzCond.Normal OD.No SZ.Def - -type internal OneOpD0() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.M1 SZ.Byte OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpD1() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.M1 SZ.Def OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpD2() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmCL SZ.Byte OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpD3() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.RmCL SZ.Def OpGroup.G2 - render span phlp op szCond oidx szidx - -type internal OneOpD4() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm8].Render(span, phlp) - newInstruction phlp Opcode.AAM oprs - -type internal OneOpD5() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm8].Render(span, phlp) - newInstruction phlp Opcode.AAD oprs - -type internal OneOpD6() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOpD7() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.XLATB oprs - -type internal OneOpD8() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getD8OpWithin00toBF modRM - let effOprSize = getEscEffOprSizeByESCOp 0xD8uy - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getD8OverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpD9() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getD9OpWithin00toBF modRM - let effOprSize = Operands.getReg modRM |> getD9EscEffOprSizeByModRM - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getD9OverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDA() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDAOpWithin00toBF modRM - let effOprSize = getEscEffOprSizeByESCOp 0xDAuy - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDAOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDB() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDBOpWithin00toBF modRM - let effOprSize = Operands.getReg modRM |> getDBEscEffOprSizeByModRM - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDBOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDC() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDCOpWithin00toBF modRM - let effOprSize = getEscEffOprSizeByESCOp 0xDCuy - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDCOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDD() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDDOpWithin00toBF modRM - let effOprSize = Operands.getReg modRM |> getDDEscEffOprSizeByModRM - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDDOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDE() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDEOpWithin00toBF modRM - let effOprSize = getEscEffOprSizeByESCOp 0xDEuy - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDEOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpDF() = - inherit ParsingJob() - override _.Run(span, phlp) = - let modRM = phlp.ReadByte span - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - if modRM <= 0xBFuy then - let op = getDFOpWithin00toBF modRM - let effOprSize = Operands.getReg modRM |> getDFEscEffOprSizeByModRM - phlp.MemEffOprSize <- effOprSize - phlp.MemEffRegSize <- effOprSize - let o = OperandParsers.parseMemory modRM span phlp - newInstruction phlp op (OneOperand o) - else - let opcode, oprs = getDFOverBF modRM - newInstruction phlp opcode oprs - -type internal OneOpE0() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.LOOPNE oprs - -type internal OneOpE1() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.LOOPE oprs - -type internal OneOpE2() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.LOOP oprs - -type internal OneOpE3() = - inherit ParsingJob() - override _.Run(span, phlp) = - if Prefix.hasAddrSz phlp.Prefixes then - let opcode = - if ParsingHelper.Is64bit phlp then Opcode.JECXZ else Opcode.JCXZ - render span phlp opcode SzCond.F64 OD.Rel8 SZ.Byte - elif ParsingHelper.Is64bit phlp then - render span phlp Opcode.JRCXZ SzCond.F64 OD.Rel8 SZ.Byte - else render span phlp Opcode.JECXZ SzCond.F64 OD.Rel8 SZ.Byte - -type internal OneOpE4() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.IN oprs - -type internal OneOpE5() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.REXPrefix <- REXPrefix.NOREX - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.RegImm8].Render(span, phlp) - newInstruction phlp Opcode.IN oprs - -type internal OneOpE6() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm8Reg].Render(span, phlp) - newInstruction phlp Opcode.OUT oprs - -type internal OneOpE7() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.REXPrefix <- REXPrefix.NOREX - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Imm8Reg].Render(span, phlp) - newInstruction phlp Opcode.OUT oprs - -type internal OneOpE8() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel].Render(span, phlp) - newInstruction phlp Opcode.CALL oprs - -type internal OneOpE9() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.D64].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel].Render(span, phlp) - newInstruction phlp Opcode.JMP oprs - -type internal OneOpEA() = - inherit ParsingJob() - override _.Run(span, phlp) = -#if !EMULATION - ensure32 phlp -#endif - addBND phlp - phlp.SzComputers[int SZ.P].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.Dir].Render(span, phlp) - phlp.IsFar <- true - newInstruction phlp Opcode.JMP oprs - -type internal OneOpEB() = - inherit ParsingJob() - override _.Run(span, phlp) = - addBND phlp - phlp.SzComputers[int SZ.Byte].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.Rel8].Render(span, phlp) - newInstruction phlp Opcode.JMP oprs - -type internal OneOpEC() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.ALDx].Render(span, phlp) - newInstruction phlp Opcode.IN oprs - -type internal OneOpED() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.EaxDx].Render(span, phlp) - newInstruction phlp Opcode.IN oprs - -type internal OneOpEE() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.DxAL].Render(span, phlp) - newInstruction phlp Opcode.OUT oprs - -type internal OneOpEF() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.DxEax].Render(span, phlp) - newInstruction phlp Opcode.OUT oprs - -type internal OneOpF0() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOpF1() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.Normal) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.INT1 oprs - -type internal OneOpF2() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOpF3() = - inherit ParsingJob() - override _.Run(_, _) = raise ParsingFailureException - -type internal OneOpF4() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.HLT oprs - -type internal OneOpF5() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.CMC oprs - -type internal OneOpF6() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.Mem SZ.Byte OpGroup.G3A - render span phlp op szCond oidx szidx - -type internal OneOpF7() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.Mem SZ.Def OpGroup.G3B - render span phlp op szCond oidx szidx - -type internal OneOpF8() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.CLC oprs - -type internal OneOpF9() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.STC oprs - -type internal OneOpFA() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.CLI oprs - -type internal OneOpFB() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.STI oprs - -type internal OneOpFC() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.CLD oprs - -type internal OneOpFD() = - inherit ParsingJob() - override _.Run(span, phlp) = - phlp.SzComputers[int SZ.Def].Render(phlp, SzCond.F64) - let oprs = phlp.OprParsers[int OD.No].Render(span, phlp) - newInstruction phlp Opcode.STD oprs - -type internal OneOpFE() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.No SZ.Def OpGroup.G4 - render span phlp op szCond oidx szidx - -type internal OneOpFF() = - inherit ParsingJob() - override _.Run(span, phlp) = - let struct (op, oidx, szidx, szCond) = - parseGrpOpKind span phlp OD.No SZ.Def OpGroup.G5 - if Opcode.isBranch op then addBND phlp else () - render span phlp op szCond oidx szidx From 4f3dcfa5cb96d3e56d805617f9f820c01eed81e4 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 24 Feb 2026 14:26:54 +0900 Subject: [PATCH 02/26] [Intel] Add Compat type and Fix checkSize --- src/FrontEnd/Intel/Intel.fs | 16534 +++++++++++++++++++++-------- src/FrontEnd/Intel/IntelTypes.fs | 21 +- src/FrontEnd/Intel/Parser.fs | 64 +- 3 files changed, 12297 insertions(+), 4322 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 746a380a6..f835b29d4 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -9,7 +9,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { Opcode = Opcode.ADD @@ -18,21 +20,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 2(0x02) { Opcode = Opcode.ADD @@ -41,7 +49,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 3(0x03) { Opcode = Opcode.ADD @@ -50,21 +60,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 4(0x04) { Opcode = Opcode.ADD @@ -73,7 +89,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) { Opcode = Opcode.ADD @@ -82,21 +100,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 6(0x06) { Opcode = Opcode.PUSH @@ -105,7 +129,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ES" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 7(0x07) { Opcode = Opcode.POP @@ -114,7 +140,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ES" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 8(0x08) { Opcode = Opcode.OR @@ -123,7 +151,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { Opcode = Opcode.OR @@ -132,21 +162,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 10(0x0A) { Opcode = Opcode.OR @@ -155,7 +191,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { Opcode = Opcode.OR @@ -164,21 +202,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 12(0x0C) { Opcode = Opcode.OR @@ -187,7 +231,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) { Opcode = Opcode.OR @@ -196,21 +242,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 14(0x0E) { Opcode = Opcode.PUSH @@ -219,7 +271,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "CS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 15(0x0F) |] @@ -230,7 +284,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) { Opcode = Opcode.ADC @@ -239,21 +295,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 18(0x12) { Opcode = Opcode.ADC @@ -262,7 +324,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 19(0x13) { Opcode = Opcode.ADC @@ -271,21 +335,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 20(0x14) { Opcode = Opcode.ADC @@ -294,7 +364,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { Opcode = Opcode.ADC @@ -303,21 +375,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 22(0x16) { Opcode = Opcode.PUSH @@ -326,7 +404,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "SS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) { Opcode = Opcode.POP @@ -335,7 +415,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "SS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) { Opcode = Opcode.SBB @@ -344,7 +426,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 25(0x19) { Opcode = Opcode.SBB @@ -353,21 +437,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 26(0x1A) { Opcode = Opcode.SBB @@ -376,7 +466,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 27(0x1B) { Opcode = Opcode.SBB @@ -385,21 +477,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 28(0x1C) { Opcode = Opcode.SBB @@ -408,7 +506,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) { Opcode = Opcode.SBB @@ -417,21 +517,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 30(0x1E) { Opcode = Opcode.PUSH @@ -440,7 +546,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) { Opcode = Opcode.POP @@ -449,7 +557,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 32(0x20) { Opcode = Opcode.AND @@ -458,7 +568,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { Opcode = Opcode.AND @@ -467,21 +579,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 34(0x22) { Opcode = Opcode.AND @@ -490,7 +608,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 35(0x23) { Opcode = Opcode.AND @@ -499,21 +619,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 36(0x24) { Opcode = Opcode.AND @@ -522,7 +648,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 37(0x25) { Opcode = Opcode.AND @@ -531,21 +659,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 38(0x26) |] @@ -556,7 +690,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 40(0x28) { Opcode = Opcode.SUB @@ -565,7 +701,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { Opcode = Opcode.SUB @@ -574,21 +712,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 42(0x2A) { Opcode = Opcode.SUB @@ -597,7 +741,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 43(0x2B) { Opcode = Opcode.SUB @@ -606,21 +752,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 44(0x2C) { Opcode = Opcode.SUB @@ -629,7 +781,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 45(0x2D) { Opcode = Opcode.SUB @@ -638,21 +792,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 46(0x2E) |] @@ -663,7 +823,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 48(0x30) { Opcode = Opcode.XOR @@ -672,7 +834,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { Opcode = Opcode.XOR @@ -681,21 +845,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 50(0x32) { Opcode = Opcode.XOR @@ -704,7 +874,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; Unknown "1R/M8" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { Opcode = Opcode.XOR @@ -713,21 +885,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 52(0x34) { Opcode = Opcode.XOR @@ -736,7 +914,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 53(0x35) { Opcode = Opcode.XOR @@ -745,21 +925,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 54(0x36) |] @@ -770,7 +956,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 56(0x38) { Opcode = Opcode.CMP @@ -779,7 +967,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { Opcode = Opcode.CMP @@ -788,21 +978,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 58(0x3A) { Opcode = Opcode.CMP @@ -811,7 +1007,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) { Opcode = Opcode.CMP @@ -820,21 +1018,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 60(0x3C) { Opcode = Opcode.CMP @@ -843,7 +1047,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 61(0x3D) { Opcode = Opcode.CMP @@ -852,21 +1058,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 62(0x3E) |] @@ -877,7 +1089,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 64(0x40) { Opcode = Opcode.INC @@ -886,14 +1100,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) |] @@ -916,14 +1134,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 73(0x49) |] @@ -946,21 +1168,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 81(0x51) |] @@ -983,21 +1211,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 89(0x59) |] @@ -1020,14 +1254,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSHAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { Opcode = Opcode.POPA @@ -1036,14 +1274,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POPAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { Opcode = Opcode.BOUND @@ -1052,14 +1294,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16&16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BOUND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M32&32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { Opcode = Opcode.ARPL @@ -1068,28 +1314,36 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 100(0x64) |] @@ -1106,14 +1360,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 105(0x69) { Opcode = Opcode.IMUL @@ -1122,21 +1380,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16; Imm Sz16 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32; Imm Sz32 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64; Imm Sz32 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 106(0x6A) { Opcode = Opcode.PUSH @@ -1145,7 +1409,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 107(0x6B) { Opcode = Opcode.IMUL @@ -1154,21 +1420,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 108(0x6C) { Opcode = Opcode.INS @@ -1177,14 +1449,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 109(0x6D) { Opcode = Opcode.INS @@ -1193,28 +1469,36 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 110(0x6E) { Opcode = Opcode.OUTS @@ -1223,14 +1507,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUTSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 111(0x6F) { Opcode = Opcode.OUTS @@ -1239,28 +1527,36 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUTSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 112(0x70) { Opcode = Opcode.JO @@ -1269,7 +1565,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { Opcode = Opcode.JNO @@ -1278,7 +1576,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { Opcode = Opcode.JB @@ -1287,21 +1587,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { Opcode = Opcode.JAE @@ -1310,21 +1616,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) { Opcode = Opcode.JZ @@ -1333,14 +1645,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 117(0x75) { Opcode = Opcode.JNZ @@ -1349,14 +1665,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 118(0x76) { Opcode = Opcode.JBE @@ -1365,14 +1685,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 119(0x77) { Opcode = Opcode.JNBE @@ -1381,14 +1705,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 120(0x78) { Opcode = Opcode.JS @@ -1397,7 +1725,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 121(0x79) { Opcode = Opcode.JNS @@ -1406,7 +1736,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 122(0x7A) { Opcode = Opcode.JP @@ -1415,14 +1747,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 123(0x7B) { Opcode = Opcode.JNP @@ -1431,14 +1767,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 124(0x7C) { Opcode = Opcode.JL @@ -1447,14 +1787,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 125(0x7D) { Opcode = Opcode.JGE @@ -1463,14 +1807,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 126(0x7E) { Opcode = Opcode.JNG @@ -1479,14 +1827,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) { Opcode = Opcode.JNLE @@ -1495,14 +1847,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 128(0x80) { Opcode = Opcode.ADC @@ -1511,56 +1867,72 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "R/M81"; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 129(0x81) { Opcode = Opcode.ADC @@ -1569,168 +1941,216 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 130(0x82) |] @@ -1741,168 +2161,216 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 132(0x84) { Opcode = Opcode.TEST @@ -1911,7 +2379,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 133(0x85) { Opcode = Opcode.TEST @@ -1920,21 +2390,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 134(0x86) { Opcode = Opcode.XCHG @@ -1943,14 +2419,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 135(0x87) { Opcode = Opcode.XCHG @@ -1959,42 +2439,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 136(0x88) { Opcode = Opcode.MOV @@ -2003,7 +2495,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 137(0x89) { Opcode = Opcode.MOV @@ -2012,21 +2506,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 138(0x8A) { Opcode = Opcode.MOV @@ -2035,7 +2535,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz8; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 139(0x8B) { Opcode = Opcode.MOV @@ -2044,21 +2546,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 140(0x8C) { Opcode = Opcode.MOV @@ -2067,21 +2575,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Unknown "SREG" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "R16/R32/M16"; Unknown "SREG" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RMdiff(Sz64, Sz16); Unknown "SREG" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 141(0x8D) { Opcode = Opcode.LEA @@ -2090,21 +2604,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LEA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LEA PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "M" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 142(0x8E) { Opcode = Opcode.MOV @@ -2113,14 +2633,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "SREG"; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "SREG"; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 143(0x8F) { Opcode = Opcode.POP @@ -2129,21 +2653,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 144(0x90) { Opcode = Opcode.NOP @@ -2152,56 +2682,72 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PAUSE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Reg Sz16 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16; Unknown "AX" |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Reg Sz64 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Unknown "EAX" |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64; Unknown "RAX" |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 145(0x91) |] @@ -2224,21 +2770,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CWDE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CDQE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 153(0x99) { Opcode = Opcode.CWD @@ -2247,21 +2799,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CQO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 154(0x9A) { Opcode = Opcode.CALL @@ -2270,14 +2828,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "PTR16:16" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "PTR16:32" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) { Opcode = Opcode.FCLEX @@ -2286,63 +2848,81 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FINIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M94/108BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M2BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M14/28BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M2BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.WAIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FWAIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) { Opcode = Opcode.PUSHF @@ -2351,21 +2931,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSHFD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSHFQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 157(0x9D) { Opcode = Opcode.POPF @@ -2374,21 +2960,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POPFD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.POPFQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 158(0x9E) { Opcode = Opcode.SAHF @@ -2397,7 +2989,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) { Opcode = Opcode.LAHF @@ -2406,7 +3000,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) { Opcode = Opcode.MOV @@ -2415,14 +3011,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Unknown "MOFFS8" |] - OpEn = OpEn.FD } + OpEn = OpEn.FD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Unknown "MOFFS8" |] - OpEn = OpEn.FD } + OpEn = OpEn.FD + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 161(0xA1) { Opcode = Opcode.MOV @@ -2431,21 +3031,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Unknown "MOFFS16" |] - OpEn = OpEn.FD } + OpEn = OpEn.FD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Unknown "MOFFS32" |] - OpEn = OpEn.FD } + OpEn = OpEn.FD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Unknown "MOFFS64" |] - OpEn = OpEn.FD } + OpEn = OpEn.FD + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 162(0xA2) { Opcode = Opcode.MOV @@ -2454,14 +3060,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "MOFFS8"; Unknown "AL" |] - OpEn = OpEn.TD } + OpEn = OpEn.TD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "MOFFS8"; Unknown "AL" |] - OpEn = OpEn.TD } + OpEn = OpEn.TD + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 163(0xA3) { Opcode = Opcode.MOV @@ -2470,21 +3080,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "MOFFS16"; Unknown "AX" |] - OpEn = OpEn.TD } + OpEn = OpEn.TD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "MOFFS32"; Unknown "EAX" |] - OpEn = OpEn.TD } + OpEn = OpEn.TD + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "MOFFS64"; Unknown "RAX" |] - OpEn = OpEn.TD } + OpEn = OpEn.TD + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 164(0xA4) { Opcode = Opcode.InvalOP @@ -2493,14 +3109,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8; Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 165(0xA5) { Opcode = Opcode.InvalOP @@ -2509,42 +3129,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16; Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Mem Sz64 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOVSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 166(0xA6) { Opcode = Opcode.InvalOP @@ -2553,14 +3185,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8; Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 167(0xA7) { Opcode = Opcode.InvalOP @@ -2569,42 +3205,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16; Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Mem Sz64 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMPSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 168(0xA8) { Opcode = Opcode.TEST @@ -2613,7 +3261,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) { Opcode = Opcode.TEST @@ -2622,21 +3272,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "RAX"; Imm Sz32 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 170(0xAA) { Opcode = Opcode.InvalOP @@ -2645,14 +3301,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STOSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) { Opcode = Opcode.InvalOP @@ -2661,42 +3321,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.STOSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STOSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STOSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 172(0xAC) { Opcode = Opcode.InvalOP @@ -2705,14 +3377,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LODSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 173(0xAD) { Opcode = Opcode.InvalOP @@ -2721,42 +3397,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.LODSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LODSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LODSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 174(0xAE) { Opcode = Opcode.InvalOP @@ -2765,14 +3453,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SCASB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) { Opcode = Opcode.InvalOP @@ -2781,42 +3473,54 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz16 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SCASW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SCASD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SCASQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 176(0xB0) { Opcode = Opcode.MOV @@ -2825,7 +3529,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz8; Imm Sz8 |] - OpEn = OpEn.OI } + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 177(0xB1) |] @@ -2848,21 +3554,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz16; Imm Sz16 |] - OpEn = OpEn.OI } + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Imm Sz32 |] - OpEn = OpEn.OI } + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64; Unknown "IMM64" |] - OpEn = OpEn.OI } + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 185(0xB9) |] @@ -2885,56 +3597,72 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 193(0xC1) { Opcode = Opcode.RCL @@ -2943,168 +3671,216 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 194(0xC2) { Opcode = Opcode.RET @@ -3113,7 +3889,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) { Opcode = Opcode.RET @@ -3122,7 +3900,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 196(0xC4) { Opcode = Opcode.LES @@ -3131,14 +3911,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16:16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LES PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M16:32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) { Opcode = Opcode.LDS @@ -3147,14 +3931,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16:16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LDS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M16:32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 198(0xC6) { Opcode = Opcode.MOV @@ -3163,14 +3951,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XABORT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 199(0xC7) { Opcode = Opcode.MOV @@ -3179,35 +3971,45 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.XBEGIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XBEGIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 200(0xC8) { Opcode = Opcode.ENTER @@ -3216,21 +4018,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16; Unknown "0" |] - OpEn = OpEn.II } + OpEn = OpEn.II + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ENTER PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16; Unknown "1" |] - OpEn = OpEn.II } + OpEn = OpEn.II + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ENTER PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16; Imm Sz8 |] - OpEn = OpEn.II } + OpEn = OpEn.II + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 201(0xC9) { Opcode = Opcode.LEAVE @@ -3239,21 +4047,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LEAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.LEAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 202(0xCA) { Opcode = Opcode.RET @@ -3262,7 +4076,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz16 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 203(0xCB) { Opcode = Opcode.RET @@ -3271,7 +4087,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 204(0xCC) { Opcode = Opcode.INT3 @@ -3280,7 +4098,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) { Opcode = Opcode.INT @@ -3289,7 +4109,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 206(0xCE) { Opcode = Opcode.INTO @@ -3298,7 +4120,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 207(0xCF) { Opcode = Opcode.IRET @@ -3307,21 +4131,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IRETD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IRETQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 208(0xD0) { Opcode = Opcode.RCL @@ -3330,56 +4160,72 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz8; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 209(0xD1) { Opcode = Opcode.RCL @@ -3388,168 +4234,216 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Unknown "1" |] - OpEn = OpEn.M1 } + OpEn = OpEn.M1 + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 210(0xD2) { Opcode = Opcode.RCL @@ -3558,56 +4452,72 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz8; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) { Opcode = Opcode.RCL @@ -3616,168 +4526,216 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Unknown "CL" |] - OpEn = OpEn.MC } + OpEn = OpEn.MC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 212(0xD4) { Opcode = Opcode.AAM @@ -3786,14 +4744,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AAM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 213(0xD5) { Opcode = Opcode.AAD @@ -3802,14 +4764,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } { Opcode = Opcode.AAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Invalid + Compat = CompatLegMode.Valid } |] [| // index 214(0xD6) { Opcode = Opcode.InvalOP @@ -3818,7 +4784,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 215(0xD7) { Opcode = Opcode.XLAT @@ -3827,21 +4795,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz8 |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XLATB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XLATB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 216(0xD8) { Opcode = Opcode.FADD @@ -3850,126 +4824,162 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) { Opcode = Opcode.F2XM1 @@ -3978,252 +4988,324 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FABS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCHS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDECSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FINCSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLD1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDL2T PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDL2E PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDPI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDLG2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDLN2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M2BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLDENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M14/28BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FPREM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FPREM1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FRNDINT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSCALE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSINCOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSQRT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M32FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNSTCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M2BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNSTENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M14/28BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FTST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXAM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXCH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXCH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXTRACT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FYL2X PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FYL2XP1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 218(0xDA) { Opcode = Opcode.FIADD @@ -4232,91 +5314,117 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FICOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FICOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOMPP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) { Opcode = Opcode.FNCLEX @@ -4325,98 +5433,126 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCMOVNU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNINIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M32INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M80FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M80FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { Opcode = Opcode.FADD @@ -4425,98 +5561,126 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { Opcode = Opcode.FFREE @@ -4525,98 +5689,126 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M64INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M94/108BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M94/108BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M64FP" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M2BYTE" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { Opcode = Opcode.FADDP @@ -4625,147 +5817,189 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FADDP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMPP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FDIVRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FICOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FICOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMULP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FMULP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FSUBRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { Opcode = Opcode.FBLD @@ -4774,77 +6008,99 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "M80BCD" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FBSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "M80BCD" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FUCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "ST"; Unknown "ST(I)" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M64INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FIST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M64INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M16INT" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FNSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX" |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) { Opcode = Opcode.LOOPNE @@ -4853,7 +6109,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 225(0xE1) { Opcode = Opcode.LOOPE @@ -4862,7 +6120,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 226(0xE2) { Opcode = Opcode.LOOP @@ -4871,7 +6131,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 227(0xE3) { Opcode = Opcode.JCXZ @@ -4880,21 +6142,27 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.JECXZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JRCXZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 228(0xE4) { Opcode = Opcode.IN @@ -4903,7 +6171,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 229(0xE5) { Opcode = Opcode.IN @@ -4912,14 +6182,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Imm Sz8 |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 230(0xE6) { Opcode = Opcode.OUT @@ -4928,7 +6202,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8; Unknown "AL" |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 231(0xE7) { Opcode = Opcode.OUT @@ -4937,14 +6213,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8; Unknown "AX" |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8; Unknown "EAX" |] - OpEn = OpEn.I } + OpEn = OpEn.I + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) { Opcode = Opcode.CALL @@ -4953,14 +6233,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 233(0xE9) { Opcode = Opcode.JMP @@ -4969,14 +6253,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 234(0xEA) { Opcode = Opcode.JMP @@ -4985,14 +6273,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "PTR16:16" |] - OpEn = OpEn.S } + OpEn = OpEn.S + Mode64 = Mode64.Inv + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "PTR16:32" |] - OpEn = OpEn.S } + OpEn = OpEn.S + Mode64 = Mode64.Inv + Compat = CompatLegMode.Valid } |] [| // index 235(0xEB) { Opcode = Opcode.JMP @@ -5001,7 +6293,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 236(0xEC) { Opcode = Opcode.IN @@ -5010,7 +6304,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AL"; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 237(0xED) { Opcode = Opcode.IN @@ -5019,14 +6315,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "AX"; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "EAX"; Unknown "DX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 238(0xEE) { Opcode = Opcode.OUT @@ -5035,7 +6335,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Unknown "AL" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 239(0xEF) { Opcode = Opcode.OUT @@ -5044,14 +6346,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Unknown "AX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "DX"; Unknown "EAX" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 240(0xF0) { Opcode = Opcode.LOCK @@ -5060,7 +6366,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 241(0xF1) { Opcode = Opcode.INT1 @@ -5069,7 +6377,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 242(0xF2) { Opcode = Opcode.FPTAN @@ -5078,14 +6388,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XACQUIRE - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 243(0xF3) { Opcode = Opcode.FPATAN @@ -5094,14 +6408,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XRELEASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 244(0xF4) { Opcode = Opcode.HLT @@ -5110,7 +6428,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 245(0xF5) { Opcode = Opcode.CMC @@ -5119,7 +6439,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 246(0xF6) { Opcode = Opcode.DIV @@ -5128,49 +6450,63 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 247(0xF7) { Opcode = Opcode.DIV @@ -5179,147 +6515,189 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16; Imm Sz16 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64; Imm Sz32 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 248(0xF8) { Opcode = Opcode.CLC @@ -5328,7 +6706,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) { Opcode = Opcode.STC @@ -5337,7 +6717,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 250(0xFA) { Opcode = Opcode.CLI @@ -5346,7 +6728,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) { Opcode = Opcode.STI @@ -5355,7 +6739,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) { Opcode = Opcode.CLD @@ -5364,7 +6750,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 253(0xFD) { Opcode = Opcode.STD @@ -5373,7 +6761,9 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 254(0xFE) { Opcode = Opcode.DEC @@ -5382,14 +6772,18 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 255(0xFF) { Opcode = Opcode.CALL @@ -5398,147 +6792,189 @@ let (norOne: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16:16" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16:32" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16:64" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M16:16" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M16:32" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "M16:64" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] |] @@ -5551,42 +6987,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SLDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.VERR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.VERW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { Opcode = Opcode.CLAC @@ -5595,259 +7043,333 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.INVLPG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Unknown "M" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M16&32" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.LIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16&32" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.LGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "M16&64" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.LIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "M16&64" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.LMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MONITOR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MWAIT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDPKRU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDTSCP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.RSTORSSP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SAVEPREVSSP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SETSSBSY - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RMdiff(Sz32, Sz16) |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SMSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RMdiff(Sz64, Sz16) |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STAC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SWAPGS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRPKRU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XEND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XGETBV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSETBV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XTEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 2(0x02) { Opcode = Opcode.LAR @@ -5856,21 +7378,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LAR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RMdiff(Sz64, Sz16) |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 3(0x03) { Opcode = Opcode.LSL @@ -5879,21 +7407,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LSL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LSL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RMdiff(Sz32, Sz16) |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 4(0x04) |] @@ -5904,7 +7438,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } |] [| // index 6(0x06) { Opcode = Opcode.CLTS @@ -5913,7 +7449,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 7(0x07) { Opcode = Opcode.SYSRET @@ -5922,14 +7460,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { Opcode = Opcode.SYSRET PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } |] [| // index 8(0x08) { Opcode = Opcode.INVD @@ -5938,7 +7480,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { Opcode = Opcode.WBINVD @@ -5947,14 +7491,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) |] @@ -5965,7 +7513,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) |] @@ -5976,14 +7526,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PREFETCHWT1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 14(0x0E) |] @@ -5991,208 +7545,262 @@ let (norTwo: InstructionCore[][]) = |] [| // index 16(0x10) { Opcode = Opcode.MOVSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVUPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVUPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 17(0x11) { Opcode = Opcode.MOVSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVUPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVUPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 18(0x12) { Opcode = Opcode.MOVDDUP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVHLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVLPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSLDUP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 19(0x13) { Opcode = Opcode.MOVLPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 20(0x14) { Opcode = Opcode.UNPCKLPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.UNPCKLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.UNPCKHPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.UNPCKHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.MOVHPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVLHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVSHDUP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.MOVHPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) { Opcode = Opcode.PREFETCHT0 @@ -6201,146 +7809,186 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PREFETCHT1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PREFETCHT2 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PREFETCHNTA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 25(0x19) |] [| // index 26(0x1A) { Opcode = Opcode.BNDCL - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDCL - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDCU - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDCU - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDLDX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; Unknown "MIB" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMOV - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND1"; Unknown "BND2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMOV - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND1"; Unknown "BND2/M128" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 27(0x1B) { Opcode = Opcode.BNDCN - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDCN - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMK - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; Mem Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMK - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND"; Mem Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMOV - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND1/M64"; Unknown "BND2" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDMOV - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "BND1/M128"; Unknown "BND2" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BNDSTX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MIB"; Unknown "BND" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 28(0x1C) { Opcode = Opcode.InvalOP @@ -6349,39 +7997,49 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Mem Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 29(0x1D) |] [| // index 30(0x1E) { Opcode = Opcode.ENDBR32 - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ENDBR64 - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDSSPD - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDSSPQ - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 31(0x1F) { Opcode = Opcode.NOP @@ -6390,14 +8048,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.NOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| RM Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 32(0x20) { Opcode = Opcode.MOV @@ -6406,21 +8068,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "CR0–CR7" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "CR0–CR7" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz64; Unknown "CR8" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 33(0x21) { Opcode = Opcode.MOV @@ -6429,14 +8097,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "DR0–DR7" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "DR0–DR7" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 34(0x22) { Opcode = Opcode.MOV @@ -6445,21 +8117,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "CR8"; Reg Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 35(0x23) { Opcode = Opcode.MOV @@ -6468,14 +8146,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 36(0x24) |] @@ -6487,215 +8169,271 @@ let (norTwo: InstructionCore[][]) = |] [| // index 40(0x28) { Opcode = Opcode.MOVAPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVAPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.MOVAPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVAPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.CVTPI2PD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "MM/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CVTPI2PS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "MM/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CVTSI2SD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R32/M32" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSI2SD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSI2SS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSI2SS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.MOVNTPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVNTPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) { Opcode = Opcode.CVTTPD2PI - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CVTTPS2PI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CVTTSD2SI - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTTSD2SI - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTTSS2SI - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTTSS2SI - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 45(0x2D) { Opcode = Opcode.CVTPD2PI - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTPS2PI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CVTSD2SI - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSD2SI - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSS2SI - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSS2SI - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 46(0x2E) { Opcode = Opcode.UCOMISD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.UCOMISS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 47(0x2F) { Opcode = Opcode.COMISD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.COMISS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 48(0x30) { Opcode = Opcode.WRMSR @@ -6704,7 +8442,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { Opcode = Opcode.RDTSC @@ -6713,7 +8453,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 50(0x32) { Opcode = Opcode.RDMSR @@ -6722,7 +8464,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { Opcode = Opcode.RDPMC @@ -6731,7 +8475,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 52(0x34) { Opcode = Opcode.SYSENTER @@ -6740,7 +8486,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 53(0x35) { Opcode = Opcode.SYSEXIT @@ -6749,14 +8497,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SYSEXIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 54(0x36) |] @@ -6767,56 +8519,72 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.None } + OpEn = OpEn.None + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 56(0x38) |] @@ -6841,21 +8609,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 65(0x41) { Opcode = Opcode.CMOVNO @@ -6864,21 +8638,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 66(0x42) { Opcode = Opcode.CMOVB @@ -6887,63 +8667,81 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMOVC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 67(0x43) { Opcode = Opcode.CMOVAE @@ -6952,63 +8750,81 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMOVNC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 68(0x44) { Opcode = Opcode.InvalOP @@ -7017,42 +8833,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMOVZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 69(0x45) { Opcode = Opcode.InvalOP @@ -7061,42 +8889,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.CMOVNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 70(0x46) { Opcode = Opcode.CMOVBE @@ -7105,42 +8945,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 71(0x47) { Opcode = Opcode.CMOVA @@ -7149,42 +9001,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVA PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 72(0x48) { Opcode = Opcode.CMOVS @@ -7193,21 +9057,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 73(0x49) { Opcode = Opcode.CMOVNS @@ -7216,21 +9086,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 74(0x4A) { Opcode = Opcode.CMOVP @@ -7239,42 +9115,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 75(0x4B) { Opcode = Opcode.CMOVNP @@ -7283,42 +9171,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVNP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 76(0x4C) { Opcode = Opcode.CMOVL @@ -7327,42 +9227,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 77(0x4D) { Opcode = Opcode.CMOVGE @@ -7371,42 +9283,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 78(0x4E) { Opcode = Opcode.CMOVLE @@ -7415,42 +9339,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 79(0x4F) { Opcode = Opcode.CMOVG @@ -7459,88 +9395,112 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMOVG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.VNE + Compat = CompatLegMode.NA } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 80(0x50) { Opcode = Opcode.MOVMSKPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVMSKPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 81(0x51) { Opcode = Opcode.SQRTPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SQRTPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SQRTSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SQRTSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) { Opcode = Opcode.RSQRTPS @@ -7549,14 +9509,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RSQRTSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 83(0x53) { Opcode = Opcode.RCPPS @@ -7565,168 +9529,212 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RCPSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 84(0x54) { Opcode = Opcode.ANDPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ANDPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 85(0x55) { Opcode = Opcode.ANDNPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ANDNPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 86(0x56) { Opcode = Opcode.ORPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ORPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 87(0x57) { Opcode = Opcode.XORPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XORPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 88(0x58) { Opcode = Opcode.ADDPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADDPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADDSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADDSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 89(0x59) { Opcode = Opcode.MULPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MULPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MULSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MULSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 90(0x5A) { Opcode = Opcode.CVTPD2PS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTPS2PD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSD2SS - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTSS2SD - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 91(0x5B) { Opcode = Opcode.CVTDQ2PS @@ -7735,141 +9743,179 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTPS2DQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTTPS2DQ - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 92(0x5C) { Opcode = Opcode.SUBPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SUBPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SUBSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SUBSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 93(0x5D) { Opcode = Opcode.MINPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MINPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MINSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MINSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 94(0x5E) { Opcode = Opcode.DIVPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.DIVPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.DIVSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.DIVSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 95(0x5F) { Opcode = Opcode.MAXPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MAXPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MAXSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MAXSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 96(0x60) { Opcode = Opcode.PUNPCKLBW @@ -7878,14 +9924,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M32" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKLBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 97(0x61) { Opcode = Opcode.PUNPCKLWD @@ -7894,14 +9944,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M32" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKLWD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 98(0x62) { Opcode = Opcode.PUNPCKLDQ @@ -7910,14 +9964,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M32" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKLDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.PACKSSWB @@ -7926,14 +9984,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PACKSSWB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) { Opcode = Opcode.PCMPGTB @@ -7942,14 +10004,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPGTB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 101(0x65) { Opcode = Opcode.PCMPGTW @@ -7958,14 +10024,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPGTW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 102(0x66) { Opcode = Opcode.PCMPGTD @@ -7974,14 +10044,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPGTD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 103(0x67) { Opcode = Opcode.PACKUSWB @@ -7990,14 +10064,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PACKUSWB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 104(0x68) { Opcode = Opcode.PUNPCKHBW @@ -8006,14 +10084,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKHBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 105(0x69) { Opcode = Opcode.PUNPCKHWD @@ -8022,14 +10104,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKHWD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 106(0x6A) { Opcode = Opcode.PUNPCKHDQ @@ -8038,14 +10124,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PUNPCKHDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 107(0x6B) { Opcode = Opcode.PACKSSDW @@ -8054,32 +10144,40 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PACKSSDW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 108(0x6C) { Opcode = Opcode.PUNPCKLQDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 109(0x6D) { Opcode = Opcode.PUNPCKHQDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 110(0x6E) { Opcode = Opcode.MOVD @@ -8088,81 +10186,103 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; RM Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; RM Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 111(0x6F) { Opcode = Opcode.MOVDQA - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVDQU - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 112(0x70) { Opcode = Opcode.PSHUFD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSHUFHW - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSHUFLW - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSHUFW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { Opcode = Opcode.PSLLW @@ -8171,42 +10291,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "MM1"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 114(0x72) { Opcode = Opcode.PSLLD @@ -8215,86 +10347,110 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) { Opcode = Opcode.PSLLDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 116(0x74) { Opcode = Opcode.PCMPEQB @@ -8303,14 +10459,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPEQB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 117(0x75) { Opcode = Opcode.PCMPEQW @@ -8319,14 +10479,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPEQW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 118(0x76) { Opcode = Opcode.PCMPEQD @@ -8335,14 +10499,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PCMPEQD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 119(0x77) { Opcode = Opcode.EMMS @@ -8351,7 +10519,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 120(0x78) |] @@ -8363,35 +10533,43 @@ let (norTwo: InstructionCore[][]) = |] [| // index 124(0x7C) { Opcode = Opcode.HADDPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.HADDPS - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 125(0x7D) { Opcode = Opcode.HSUBPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.HSUBPS - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 126(0x7E) { Opcode = Opcode.MOVD @@ -8400,58 +10578,74 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Unknown "MM" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Unknown "MM" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 127(0x7F) { Opcode = Opcode.MOVDQA - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVDQU - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM/M64"; Unknown "MM" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 128(0x80) { Opcode = Opcode.JO @@ -8460,14 +10654,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 129(0x81) { Opcode = Opcode.JNO @@ -8476,14 +10674,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 130(0x82) { Opcode = Opcode.JB @@ -8492,42 +10694,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 131(0x83) { Opcode = Opcode.JAE @@ -8536,42 +10750,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 132(0x84) { Opcode = Opcode.JZ @@ -8580,42 +10806,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 133(0x85) { Opcode = Opcode.JNZ @@ -8624,28 +10862,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 134(0x86) { Opcode = Opcode.JBE @@ -8654,28 +10900,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 135(0x87) { Opcode = Opcode.JNBE @@ -8684,28 +10938,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 136(0x88) { Opcode = Opcode.JS @@ -8714,14 +10976,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 137(0x89) { Opcode = Opcode.JNS @@ -8730,14 +10996,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 138(0x8A) { Opcode = Opcode.JP @@ -8746,28 +11016,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 139(0x8B) { Opcode = Opcode.JNP @@ -8776,28 +11054,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 140(0x8C) { Opcode = Opcode.JL @@ -8806,28 +11092,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 141(0x8D) { Opcode = Opcode.JGE @@ -8836,28 +11130,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 142(0x8E) { Opcode = Opcode.JNG @@ -8866,28 +11168,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 143(0x8F) { Opcode = Opcode.JNLE @@ -8896,28 +11206,36 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz16 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.NS + Compat = CompatLegMode.Valid } { Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Rel Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 144(0x90) { Opcode = Opcode.SETO @@ -8926,7 +11244,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 145(0x91) { Opcode = Opcode.SETNO @@ -8935,7 +11255,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 146(0x92) { Opcode = Opcode.SETB @@ -8944,21 +11266,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 147(0x93) { Opcode = Opcode.InvalOP @@ -8967,21 +11295,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SETNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 148(0x94) { Opcode = Opcode.InvalOP @@ -8990,14 +11324,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SETZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 149(0x95) { Opcode = Opcode.InvalOP @@ -9006,14 +11344,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SETNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 150(0x96) { Opcode = Opcode.SETBE @@ -9022,14 +11364,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 151(0x97) { Opcode = Opcode.SETA @@ -9038,14 +11384,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 152(0x98) { Opcode = Opcode.SETS @@ -9054,7 +11404,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 153(0x99) { Opcode = Opcode.SETNS @@ -9063,7 +11415,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 154(0x9A) { Opcode = Opcode.SETP @@ -9072,14 +11426,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) { Opcode = Opcode.SETNP @@ -9088,14 +11446,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) { Opcode = Opcode.SETL @@ -9104,14 +11466,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 157(0x9D) { Opcode = Opcode.InvalOP @@ -9120,14 +11486,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SETNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 158(0x9E) { Opcode = Opcode.SETLE @@ -9136,14 +11506,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) { Opcode = Opcode.SETG @@ -9152,14 +11526,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| RM Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) { Opcode = Opcode.PUSH @@ -9168,7 +11546,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "FS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 161(0xA1) { Opcode = Opcode.POP @@ -9177,21 +11557,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "FS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "FS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "FS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 162(0xA2) { Opcode = Opcode.CPUID @@ -9200,7 +11586,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 163(0xA3) { Opcode = Opcode.BT @@ -9209,21 +11597,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 164(0xA4) { Opcode = Opcode.SHLD @@ -9232,21 +11626,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 165(0xA5) { Opcode = Opcode.SHLD @@ -9255,21 +11655,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 166(0xA6) |] @@ -9282,7 +11688,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "GS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) { Opcode = Opcode.POP @@ -9291,21 +11699,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "GS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "GS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "GS" |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 170(0xAA) { Opcode = Opcode.RSM @@ -9314,7 +11728,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) { Opcode = Opcode.BTS @@ -9323,21 +11739,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 172(0xAC) { Opcode = Opcode.SHRD @@ -9346,21 +11768,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHRD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] - OpEn = OpEn.MRI } + OpEn = OpEn.MRI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 173(0xAD) { Opcode = Opcode.SHRD @@ -9369,21 +11797,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.SHRD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] - OpEn = OpEn.MRC } + OpEn = OpEn.MRC + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 174(0xAE) { Opcode = Opcode.CLFLUSH @@ -9392,238 +11826,306 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CLFLUSHOPT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CLRSSBSY - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Mem Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CLWB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Mem Sz8 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.FXRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M512BYTE" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXRSTOR64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M512BYTE" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.FXSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M512BYTE" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.FXSAVE64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Unknown "M512BYTE" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.INCSSPD - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Reg Sz32 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.INCSSPQ - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Reg Sz64 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.LDMXCSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Mem Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.LFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "R64/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "R32/M32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDFSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDFSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDGSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDGSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.STMXCSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Mem Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz32; Unknown ""; Unknown "" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "R16/R32/R64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz32; Unknown ""; Unknown "" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRFSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRFSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRGSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRGSBASE - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVEOPT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 175(0xAF) { Opcode = Opcode.IMUL @@ -9632,21 +12134,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 176(0xB0) { Opcode = Opcode.CMPXCHG @@ -9655,7 +12163,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 177(0xB1) { Opcode = Opcode.CMPXCHG @@ -9664,21 +12174,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPXCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 178(0xB2) { Opcode = Opcode.LSS @@ -9687,21 +12203,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16:16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LSS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M16:32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LSS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "M16:64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 179(0xB3) { Opcode = Opcode.BTR @@ -9710,21 +12232,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 180(0xB4) { Opcode = Opcode.LFS @@ -9733,21 +12261,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16:16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LFS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M16:32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LFS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "M16:64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 181(0xB5) { Opcode = Opcode.LGS @@ -9756,21 +12290,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Unknown "M16:16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LGS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M16:32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.LGS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "M16:64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 182(0xB6) { Opcode = Opcode.MOVZX @@ -9779,21 +12319,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVZX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVZX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 183(0xB7) { Opcode = Opcode.MOVZX @@ -9802,37 +12348,47 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVZX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 184(0xB8) { Opcode = Opcode.POPCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POPCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.POPCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 185(0xB9) { Opcode = Opcode.UD1 @@ -9841,7 +12397,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 186(0xBA) { Opcode = Opcode.BT @@ -9850,84 +12408,108 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz16; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz32; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| RM Sz64; Imm Sz8 |] - OpEn = OpEn.MI } + OpEn = OpEn.MI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 187(0xBB) { Opcode = Opcode.BTC @@ -9936,21 +12518,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BTC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 188(0xBC) { Opcode = Opcode.BSF @@ -9959,42 +12547,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BSF PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BSF PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.TZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.TZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.TZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 189(0xBD) { Opcode = Opcode.BSR @@ -10003,42 +12603,54 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.LZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.LZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.LZCNT - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 190(0xBE) { Opcode = Opcode.MOVSX @@ -10047,21 +12659,27 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 191(0xBF) { Opcode = Opcode.MOVSX @@ -10070,14 +12688,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVSX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 192(0xC0) { Opcode = Opcode.XADD @@ -10086,7 +12708,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz8; Reg Sz8 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 193(0xC1) { Opcode = Opcode.XADD @@ -10095,51 +12719,65 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XADD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.XADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 194(0xC2) { Opcode = Opcode.CMPPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CMPPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CMPSD - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CMPSS - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 195(0xC3) { Opcode = Opcode.MOVNTI @@ -10148,14 +12786,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVNTI PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 196(0xC4) { Opcode = Opcode.PINSRW @@ -10164,14 +12806,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PINSRW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 197(0xC5) { Opcode = Opcode.PEXTRW @@ -10180,30 +12826,38 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Unknown "MM"; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PEXTRW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 198(0xC6) { Opcode = Opcode.SHUFPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SHUFPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 199(0xC7) { Opcode = Opcode.CMPXCHG8B @@ -10212,119 +12866,153 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Mem Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CMPXCHG16B PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "M128" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz32 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz64 |] - OpEn = OpEn.R } + OpEn = OpEn.R + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz16 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz64 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XRSTORS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XRSTORS64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVEC64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVES PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.XSAVES64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "MEM" |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 200(0xC8) { Opcode = Opcode.BSWAP @@ -10333,14 +13021,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.BSWAP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz64 |] - OpEn = OpEn.O } + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 201(0xC9) |] @@ -10358,19 +13050,23 @@ let (norTwo: InstructionCore[][]) = |] [| // index 208(0xD0) { Opcode = Opcode.ADDSUBPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADDSUBPS - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 209(0xD1) { Opcode = Opcode.PSRLW @@ -10379,14 +13075,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 210(0xD2) { Opcode = Opcode.PSRLD @@ -10395,14 +13095,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 211(0xD3) { Opcode = Opcode.PSRLQ @@ -10411,14 +13115,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRLQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 212(0xD4) { Opcode = Opcode.PADDQ @@ -10427,14 +13135,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 213(0xD5) { Opcode = Opcode.PMULLW @@ -10443,37 +13155,47 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMULLW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 214(0xD6) { Opcode = Opcode.MOVDQ2Q - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.MOVQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVQ2DQ - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "MM" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 215(0xD7) { Opcode = Opcode.PMOVMSKB @@ -10482,14 +13204,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Unknown "MM" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMOVMSKB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 216(0xD8) { Opcode = Opcode.PSUBUSB @@ -10498,14 +13224,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBUSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 217(0xD9) { Opcode = Opcode.PSUBUSW @@ -10514,14 +13244,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBUSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 218(0xDA) { Opcode = Opcode.PMINUB @@ -10530,14 +13264,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMINUB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 219(0xDB) { Opcode = Opcode.PAND @@ -10546,14 +13284,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PAND - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 220(0xDC) { Opcode = Opcode.PADDUSB @@ -10562,14 +13304,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDUSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.PADDUSW @@ -10578,14 +13324,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDUSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.PMAXUB @@ -10594,14 +13344,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMAXUB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.PANDN @@ -10610,14 +13364,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PANDN - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) { Opcode = Opcode.PAVGB @@ -10626,14 +13384,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PAVGB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 225(0xE1) { Opcode = Opcode.PSRAW @@ -10642,14 +13404,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 226(0xE2) { Opcode = Opcode.PSRAD @@ -10658,14 +13424,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSRAD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 227(0xE3) { Opcode = Opcode.PAVGW @@ -10674,14 +13444,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PAVGW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 228(0xE4) { Opcode = Opcode.PMULHUW @@ -10690,14 +13464,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMULHUW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 229(0xE5) { Opcode = Opcode.PMULHW @@ -10706,53 +13484,67 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMULHW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 230(0xE6) { Opcode = Opcode.CVTDQ2PD - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTPD2DQ - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.CVTTPD2DQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 231(0xE7) { Opcode = Opcode.MOVNTDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVNTQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Unknown "MM" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) { Opcode = Opcode.PSUBSB @@ -10761,14 +13553,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 233(0xE9) { Opcode = Opcode.PSUBSW @@ -10777,14 +13573,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 234(0xEA) { Opcode = Opcode.PMINSW @@ -10793,14 +13593,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMINSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 235(0xEB) { Opcode = Opcode.POR @@ -10809,14 +13613,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.POR - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 236(0xEC) { Opcode = Opcode.PADDSB @@ -10825,14 +13633,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 237(0xED) { Opcode = Opcode.PADDSW @@ -10841,14 +13653,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 238(0xEE) { Opcode = Opcode.PMAXSW @@ -10857,14 +13673,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMAXSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 239(0xEF) { Opcode = Opcode.PXOR @@ -10873,23 +13693,29 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PXOR - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 240(0xF0) { Opcode = Opcode.LDDQU - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "MEM" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 241(0xF1) { Opcode = Opcode.PSLLW @@ -10898,14 +13724,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 242(0xF2) { Opcode = Opcode.PSLLD @@ -10914,14 +13744,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 243(0xF3) { Opcode = Opcode.PSLLQ @@ -10930,14 +13764,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSLLQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 244(0xF4) { Opcode = Opcode.PMULUDQ @@ -10946,14 +13784,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMULUDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 245(0xF5) { Opcode = Opcode.PMADDWD @@ -10962,14 +13804,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMADDWD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 246(0xF6) { Opcode = Opcode.PSADBW @@ -10978,30 +13824,38 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSADBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 247(0xF7) { Opcode = Opcode.MASKMOVDQU - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MASKMOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 248(0xF8) { Opcode = Opcode.PSUBB @@ -11010,14 +13864,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 249(0xF9) { Opcode = Opcode.PSUBW @@ -11026,14 +13884,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 250(0xFA) { Opcode = Opcode.PSUBD @@ -11042,14 +13904,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 251(0xFB) { Opcode = Opcode.PSUBQ @@ -11058,14 +13924,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSUBQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 252(0xFC) { Opcode = Opcode.PADDB @@ -11074,14 +13944,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 253(0xFD) { Opcode = Opcode.PADDW @@ -11090,14 +13964,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 254(0xFE) { Opcode = Opcode.PADDD @@ -11106,14 +13984,18 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM"; Unknown "MM/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PADDD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 255(0xFF) { Opcode = Opcode.UD0 @@ -11122,7 +14004,9 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] |] @@ -11135,14 +14019,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSHUFB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 1(0x01) { Opcode = Opcode.PHADDW @@ -11151,14 +14039,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHADDW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 2(0x02) { Opcode = Opcode.PHADDD @@ -11167,14 +14059,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHADDD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 3(0x03) { Opcode = Opcode.PHADDSW @@ -11183,14 +14079,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHADDSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 4(0x04) { Opcode = Opcode.PMADDUBSW @@ -11199,14 +14099,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMADDUBSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 5(0x05) { Opcode = Opcode.PHSUBW @@ -11215,14 +14119,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHSUBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 6(0x06) { Opcode = Opcode.PHSUBD @@ -11231,14 +14139,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHSUBD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 7(0x07) { Opcode = Opcode.PHSUBSW @@ -11247,14 +14159,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PHSUBSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 8(0x08) { Opcode = Opcode.PSIGNB @@ -11263,14 +14179,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSIGNB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 9(0x09) { Opcode = Opcode.PSIGNW @@ -11279,14 +14199,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSIGNW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) { Opcode = Opcode.PSIGND @@ -11295,14 +14219,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PSIGND - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 11(0x0B) { Opcode = Opcode.PMULHRSW @@ -11311,14 +14239,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PMULHRSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) |] @@ -11330,12 +14262,14 @@ let (norThree38: InstructionCore[][]) = |] [| // index 16(0x10) { Opcode = Opcode.PBLENDVB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 17(0x11) |] @@ -11345,32 +14279,38 @@ let (norThree38: InstructionCore[][]) = |] [| // index 20(0x14) { Opcode = Opcode.BLENDVPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RM0 } + OpEn = OpEn.RM0 + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.BLENDVPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RM0 } + OpEn = OpEn.RM0 + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) |] [| // index 23(0x17) { Opcode = Opcode.PTEST - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) |] @@ -11387,14 +14327,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PABSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 29(0x1D) { Opcode = Opcode.PABSW @@ -11403,14 +14347,18 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PABSW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 30(0x1E) { Opcode = Opcode.PABSD @@ -11419,70 +14367,86 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PABSD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 31(0x1F) |] [| // index 32(0x20) { Opcode = Opcode.PMOVSXBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.PMOVSXBD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.PMOVSXBQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) { Opcode = Opcode.PMOVSXWD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 36(0x24) { Opcode = Opcode.PMOVSXWQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 37(0x25) { Opcode = Opcode.PMOVSXDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 38(0x26) |] @@ -11490,39 +14454,47 @@ let (norThree38: InstructionCore[][]) = |] [| // index 40(0x28) { Opcode = Opcode.PMULDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.PCMPEQQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.MOVNTDQA - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.PACKUSDW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) |] @@ -11534,158 +14506,192 @@ let (norThree38: InstructionCore[][]) = |] [| // index 48(0x30) { Opcode = Opcode.PMOVZXBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 49(0x31) { Opcode = Opcode.PMOVZXBD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 50(0x32) { Opcode = Opcode.PMOVZXBQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 51(0x33) { Opcode = Opcode.PMOVZXWD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 52(0x34) { Opcode = Opcode.PMOVZXWQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 53(0x35) { Opcode = Opcode.PMOVZXDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 54(0x36) |] [| // index 55(0x37) { Opcode = Opcode.PCMPGTQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 56(0x38) { Opcode = Opcode.PMINSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 57(0x39) { Opcode = Opcode.PMINSD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 58(0x3A) { Opcode = Opcode.PMINUW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 59(0x3B) { Opcode = Opcode.PMINUD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 60(0x3C) { Opcode = Opcode.PMAXSB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 61(0x3D) { Opcode = Opcode.PMAXSD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 62(0x3E) { Opcode = Opcode.PMAXUW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 63(0x3F) { Opcode = Opcode.PMAXUD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 64(0x40) { Opcode = Opcode.PMULLD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 65(0x41) { Opcode = Opcode.PHMINPOSUW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 66(0x42) |] @@ -11817,19 +14823,23 @@ let (norThree38: InstructionCore[][]) = |] [| // index 130(0x82) { Opcode = Opcode.INVPCID - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "M128" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.INVPCID - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "M128" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 131(0x83) |] @@ -11976,7 +14986,9 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 201(0xC9) { Opcode = Opcode.SHA1MSG1 @@ -11985,7 +14997,9 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 202(0xCA) { Opcode = Opcode.SHA1MSG2 @@ -11994,7 +15008,9 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 203(0xCB) { Opcode = Opcode.SHA256RNDS2 @@ -12003,7 +15019,9 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 204(0xCC) { Opcode = Opcode.SHA256MSG1 @@ -12012,7 +15030,9 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 205(0xCD) { Opcode = Opcode.SHA256MSG2 @@ -12021,18 +15041,22 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 206(0xCE) |] [| // index 207(0xCF) { Opcode = Opcode.GF2P8MULB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] @@ -12052,33 +15076,41 @@ let (norThree38: InstructionCore[][]) = |] [| // index 216(0xD8) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "M384"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "M512"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "M384"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "M512"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 217(0xD9) |] @@ -12086,83 +15118,103 @@ let (norThree38: InstructionCore[][]) = |] [| // index 219(0xDB) { Opcode = Opcode.AESIMC - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 220(0xDC) { Opcode = Opcode.AESENC - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; Unknown ""; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.AESENCLAST - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.AESDEC - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.AESDECLAST - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) |] @@ -12198,84 +15250,106 @@ let (norThree38: InstructionCore[][]) = |] [| // index 240(0xF0) { Opcode = Opcode.CRC32 - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CRC32 - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz16; Mem Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Mem Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Mem Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 241(0xF1) { Opcode = Opcode.CRC32 - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz16 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CRC32 - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { Opcode = Opcode.CRC32 - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz16; Reg Sz16 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 242(0xF2) |] @@ -12285,88 +15359,110 @@ let (norThree38: InstructionCore[][]) = |] [| // index 245(0xF5) { Opcode = Opcode.WRUSSD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRUSSQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 246(0xF6) { Opcode = Opcode.ADCX - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADCX - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADOX - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ADOX - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRSSD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.WRSSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 247(0xF7) |] [| // index 248(0xF8) { Opcode = Opcode.InvalOP - PrefixType = Legacy F2 + PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "R16/R32/R64"; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 249(0xF9) { Opcode = Opcode.InvalOP @@ -12375,32 +15471,40 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 250(0xFA) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Reg Sz32; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 251(0xFB) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 252(0xFC) |] @@ -12432,66 +15536,80 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 8(0x08) { Opcode = Opcode.ROUNDPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 9(0x09) { Opcode = Opcode.ROUNDPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) { Opcode = Opcode.ROUNDSS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 11(0x0B) { Opcode = Opcode.ROUNDSD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) { Opcode = Opcode.BLENDPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 13(0x0D) { Opcode = Opcode.BLENDPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 14(0x0E) { Opcode = Opcode.PBLENDW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 15(0x0F) { Opcode = Opcode.PALIGNR @@ -12500,14 +15618,18 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PALIGNR - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 16(0x10) |] @@ -12519,46 +15641,56 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 20(0x14) { Opcode = Opcode.PEXTRB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.PEXTRW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.PEXTRD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PEXTRQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.EXTRACTPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) |] @@ -12578,37 +15710,45 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 32(0x20) { Opcode = Opcode.PINSRB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.INSERTPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.PINSRD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PINSRQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) |] @@ -12670,41 +15810,49 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 64(0x40) { Opcode = Opcode.DPPS - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 65(0x41) { Opcode = Opcode.DPPD - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 66(0x42) { Opcode = Opcode.MPSADBW - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 67(0x43) |] [| // index 68(0x44) { Opcode = Opcode.PCLMULQDQ - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 69(0x45) |] @@ -12762,39 +15910,47 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 96(0x60) { Opcode = Opcode.PCMPESTRM - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 97(0x61) { Opcode = Opcode.PCMPESTRI - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 98(0x62) { Opcode = Opcode.PCMPISTRM - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.PCMPISTRI - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) |] @@ -13011,27 +16167,33 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 205(0xCD) |] [| // index 206(0xCE) { Opcode = Opcode.GF2P8AFFINEQB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 207(0xCF) { Opcode = Opcode.GF2P8AFFINEINVQB - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] @@ -13065,12 +16227,14 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 223(0xDF) { Opcode = Opcode.AESKEYGENASSIST - PrefixType = Legacy P66 + PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) |] @@ -13106,12 +16270,14 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 240(0xF0) { Opcode = Opcode.InvalOP - PrefixType = Legacy F3 + PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Imm Sz8; Unknown "" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 241(0xF1) |] @@ -13186,56 +16352,72 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 17(0x11) { Opcode = Opcode.VMOVSD @@ -13244,56 +16426,72 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz32; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 18(0x12) { Opcode = Opcode.VMOVDDUP @@ -13302,49 +16500,63 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 19(0x13) { Opcode = Opcode.VMOVLPD @@ -13353,14 +16565,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 20(0x14) { Opcode = Opcode.VUNPCKLPD @@ -13369,28 +16585,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.VUNPCKHPD @@ -13399,28 +16623,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.VMOVHPD @@ -13429,35 +16661,45 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.VMOVHPD @@ -13466,14 +16708,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) |] @@ -13514,28 +16760,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.VMOVAPD @@ -13544,28 +16798,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.VCVTSI2SD @@ -13574,28 +16836,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.VMOVNTPD @@ -13604,28 +16874,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) { Opcode = Opcode.VCVTTSD2SI @@ -13634,28 +16912,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 45(0x2D) { Opcode = Opcode.VCVTSD2SI @@ -13664,28 +16950,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 46(0x2E) { Opcode = Opcode.VUCOMISD @@ -13694,14 +16988,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 47(0x2F) { Opcode = Opcode.VCOMISD @@ -13710,14 +17008,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 48(0x30) |] @@ -13760,28 +17062,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 66(0x42) { Opcode = Opcode.KANDNW @@ -13790,28 +17100,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDNQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KANDND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 67(0x43) |] @@ -13822,28 +17140,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KNOTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KNOTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KNOTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 69(0x45) { Opcode = Opcode.KORW @@ -13852,28 +17178,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 70(0x46) { Opcode = Opcode.KXNORW @@ -13882,28 +17216,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXNORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXNORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXNORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 71(0x47) { Opcode = Opcode.KXORW @@ -13912,28 +17254,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 72(0x48) |] @@ -13946,28 +17296,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KADDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 75(0x4B) { Opcode = Opcode.KUNPCKBW @@ -13976,21 +17334,27 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KUNPCKWD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KUNPCKDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] - OpEn = OpEn.RVR } + OpEn = OpEn.RVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 76(0x4C) |] @@ -14007,28 +17371,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVMSKPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 81(0x51) { Opcode = Opcode.VSQRTPD @@ -14037,42 +17409,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) { Opcode = Opcode.VRSQRTPS @@ -14081,21 +17465,27 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 83(0x53) { Opcode = Opcode.VRCPPS @@ -14104,21 +17494,27 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 84(0x54) { Opcode = Opcode.VANDPD @@ -14127,28 +17523,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 85(0x55) { Opcode = Opcode.VANDNPD @@ -14157,28 +17561,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 86(0x56) { Opcode = Opcode.VORPD @@ -14187,28 +17599,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 87(0x57) { Opcode = Opcode.VXORPD @@ -14217,28 +17637,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 88(0x58) { Opcode = Opcode.VADDPD @@ -14247,42 +17675,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 89(0x59) { Opcode = Opcode.VMULPD @@ -14291,42 +17731,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 90(0x5A) { Opcode = Opcode.VCVTPD2PS @@ -14335,42 +17787,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 91(0x5B) { Opcode = Opcode.VCVTDQ2PS @@ -14379,42 +17843,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 92(0x5C) { Opcode = Opcode.VSUBPD @@ -14423,42 +17899,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 93(0x5D) { Opcode = Opcode.VMINPD @@ -14467,42 +17955,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 94(0x5E) { Opcode = Opcode.VDIVPD @@ -14511,42 +18011,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 95(0x5F) { Opcode = Opcode.VMAXPD @@ -14555,42 +18067,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 96(0x60) { Opcode = Opcode.VPUNPCKLBW @@ -14599,14 +18123,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 97(0x61) { Opcode = Opcode.VPUNPCKLWD @@ -14615,14 +18143,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 98(0x62) { Opcode = Opcode.VPUNPCKLDQ @@ -14631,14 +18163,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.VPACKSSWB @@ -14647,14 +18183,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) { Opcode = Opcode.VPCMPGTB @@ -14663,14 +18203,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 101(0x65) { Opcode = Opcode.VPCMPGTW @@ -14679,14 +18223,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 102(0x66) { Opcode = Opcode.VPCMPGTD @@ -14695,14 +18243,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 103(0x67) { Opcode = Opcode.VPACKUSWB @@ -14711,14 +18263,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 104(0x68) { Opcode = Opcode.VPUNPCKHBW @@ -14727,14 +18283,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 105(0x69) { Opcode = Opcode.VPUNPCKHWD @@ -14743,14 +18303,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 106(0x6A) { Opcode = Opcode.VPUNPCKHDQ @@ -14759,14 +18323,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 107(0x6B) { Opcode = Opcode.VPACKSSDW @@ -14775,14 +18343,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 108(0x6C) { Opcode = Opcode.VPUNPCKLQDQ @@ -14791,14 +18363,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 109(0x6D) { Opcode = Opcode.VPUNPCKHQDQ @@ -14807,14 +18383,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 110(0x6E) { Opcode = Opcode.VMOVD @@ -14823,14 +18403,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R32/M32" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R64/M64" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 111(0x6F) { Opcode = Opcode.VMOVDQA @@ -14839,28 +18423,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 112(0x70) { Opcode = Opcode.VPSHUFD @@ -14869,42 +18461,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 113(0x71) { Opcode = Opcode.VPSLLW @@ -14913,42 +18517,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 114(0x72) { Opcode = Opcode.VPSLLD @@ -14957,42 +18573,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) { Opcode = Opcode.VPSLLDQ @@ -15001,56 +18629,72 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 116(0x74) { Opcode = Opcode.VPCMPEQB @@ -15059,14 +18703,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 117(0x75) { Opcode = Opcode.VPCMPEQW @@ -15075,14 +18723,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 118(0x76) { Opcode = Opcode.VPCMPEQD @@ -15091,14 +18743,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 119(0x77) { Opcode = Opcode.InvalOP @@ -15107,14 +18763,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VZEROUPPER PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.ZO } + OpEn = OpEn.ZO + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 120(0x78) |] @@ -15131,28 +18791,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 125(0x7D) { Opcode = Opcode.VHSUBPD @@ -15161,28 +18829,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 126(0x7E) { Opcode = Opcode.VMOVD @@ -15191,21 +18867,27 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32/M32"; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64/M64"; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 127(0x7F) { Opcode = Opcode.VMOVDQA @@ -15214,28 +18896,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 128(0x80) |] @@ -15276,28 +18966,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2/M16" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2/M8" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2/M64" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2/M32" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 145(0x91) { Opcode = Opcode.KMOVW @@ -15306,28 +19004,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz16; Unknown "K1" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz8; Unknown "K1" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Unknown "K1" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz32; Unknown "K1" |] - OpEn = OpEn.MR } + OpEn = OpEn.MR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 146(0x92) { Opcode = Opcode.KMOVW @@ -15336,28 +19042,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz32 |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz32 |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz64 |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz32 |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 147(0x93) { Opcode = Opcode.KMOVW @@ -15366,28 +19080,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "K1" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "K1" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Unknown "K1" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KMOVD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Unknown "K1" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 148(0x94) |] @@ -15404,28 +19126,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORTESTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORTESTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KORTESTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 153(0x99) { Opcode = Opcode.KTESTW @@ -15434,28 +19164,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KTESTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KTESTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KTESTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2" |] - OpEn = OpEn.RR } + OpEn = OpEn.RR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 154(0x9A) |] @@ -15504,14 +19242,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Mem Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 Operands = [| Mem Sz32 |] - OpEn = OpEn.M } + OpEn = OpEn.M + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 175(0xAF) |] @@ -15558,42 +19300,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 195(0xC3) |] @@ -15604,7 +19358,9 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 197(0xC5) { Opcode = Opcode.VPEXTRW @@ -15613,7 +19369,9 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 198(0xC6) { Opcode = Opcode.VSHUFPD @@ -15622,28 +19380,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 199(0xC7) |] @@ -15670,28 +19436,36 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 209(0xD1) { Opcode = Opcode.VPSRLW @@ -15700,14 +19474,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 210(0xD2) { Opcode = Opcode.VPSRLD @@ -15716,14 +19494,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 211(0xD3) { Opcode = Opcode.VPSRLQ @@ -15732,14 +19514,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 212(0xD4) { Opcode = Opcode.VPADDQ @@ -15748,14 +19534,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 213(0xD5) { Opcode = Opcode.VPMULLW @@ -15764,14 +19554,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 214(0xD6) { Opcode = Opcode.VMOVQ @@ -15780,7 +19574,9 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 215(0xD7) { Opcode = Opcode.VPMOVMSKB @@ -15789,14 +19585,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVMSKB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 216(0xD8) { Opcode = Opcode.VPSUBUSB @@ -15805,14 +19605,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 217(0xD9) { Opcode = Opcode.VPSUBUSW @@ -15821,14 +19625,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 218(0xDA) { Opcode = Opcode.VPMINUB @@ -15837,14 +19645,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 219(0xDB) { Opcode = Opcode.VPAND @@ -15853,14 +19665,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 220(0xDC) { Opcode = Opcode.VPADDUSB @@ -15869,14 +19685,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.VPADDUSW @@ -15885,14 +19705,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.VPMAXUB @@ -15901,14 +19725,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.VPANDN @@ -15917,14 +19745,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDN PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) { Opcode = Opcode.VPAVGB @@ -15933,14 +19765,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 225(0xE1) { Opcode = Opcode.VPSRAW @@ -15949,14 +19785,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 226(0xE2) { Opcode = Opcode.VPSRAD @@ -15965,14 +19805,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 227(0xE3) { Opcode = Opcode.VPAVGW @@ -15981,14 +19825,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 228(0xE4) { Opcode = Opcode.VPMULHUW @@ -15997,14 +19845,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 229(0xE5) { Opcode = Opcode.VPMULHW @@ -16013,14 +19865,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 230(0xE6) { Opcode = Opcode.VCVTDQ2PD @@ -16029,42 +19885,54 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 231(0xE7) { Opcode = Opcode.VMOVNTDQ @@ -16073,14 +19941,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 232(0xE8) { Opcode = Opcode.VPSUBSB @@ -16089,14 +19961,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 233(0xE9) { Opcode = Opcode.VPSUBSW @@ -16105,14 +19981,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 234(0xEA) { Opcode = Opcode.VPMINSW @@ -16121,14 +20001,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 235(0xEB) { Opcode = Opcode.VPOR @@ -16137,14 +20021,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 236(0xEC) { Opcode = Opcode.VPADDSB @@ -16153,14 +20041,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 237(0xED) { Opcode = Opcode.VPADDSW @@ -16169,14 +20061,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 238(0xEE) { Opcode = Opcode.VPMAXSW @@ -16185,14 +20081,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 239(0xEF) { Opcode = Opcode.VPXOR @@ -16201,14 +20101,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 240(0xF0) { Opcode = Opcode.VLDDQU @@ -16217,14 +20121,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VLDDQU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 241(0xF1) { Opcode = Opcode.VPSLLW @@ -16233,14 +20141,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 242(0xF2) { Opcode = Opcode.VPSLLD @@ -16249,14 +20161,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 243(0xF3) { Opcode = Opcode.VPSLLQ @@ -16265,14 +20181,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 244(0xF4) { Opcode = Opcode.VPMULUDQ @@ -16281,14 +20201,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 245(0xF5) { Opcode = Opcode.VPMADDWD @@ -16297,14 +20221,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 246(0xF6) { Opcode = Opcode.VPSADBW @@ -16313,14 +20241,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 247(0xF7) { Opcode = Opcode.VMASKMOVDQU @@ -16329,7 +20261,9 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 248(0xF8) { Opcode = Opcode.VPSUBB @@ -16338,14 +20272,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 249(0xF9) { Opcode = Opcode.VPSUBW @@ -16354,14 +20292,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 250(0xFA) { Opcode = Opcode.VPSUBD @@ -16370,14 +20312,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 251(0xFB) { Opcode = Opcode.VPSUBQ @@ -16386,14 +20332,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 252(0xFC) { Opcode = Opcode.VPADDB @@ -16402,14 +20352,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 253(0xFD) { Opcode = Opcode.VPADDW @@ -16418,14 +20372,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 254(0xFE) { Opcode = Opcode.VPADDD @@ -16434,14 +20392,18 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 255(0xFF) |] @@ -16456,14 +20418,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 1(0x01) { Opcode = Opcode.VPHADDW @@ -16472,14 +20438,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 2(0x02) { Opcode = Opcode.VPHADDD @@ -16488,14 +20458,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 3(0x03) { Opcode = Opcode.VPHADDSW @@ -16504,14 +20478,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 4(0x04) { Opcode = Opcode.VPMADDUBSW @@ -16520,14 +20498,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 5(0x05) { Opcode = Opcode.VPHSUBW @@ -16536,14 +20518,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 6(0x06) { Opcode = Opcode.VPHSUBD @@ -16552,14 +20538,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 7(0x07) { Opcode = Opcode.VPHSUBSW @@ -16568,14 +20558,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPHSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 8(0x08) { Opcode = Opcode.VPSIGNB @@ -16584,14 +20578,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSIGNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 9(0x09) { Opcode = Opcode.VPSIGNW @@ -16600,14 +20598,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSIGNW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) { Opcode = Opcode.VPSIGND @@ -16616,14 +20618,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 11(0x0B) { Opcode = Opcode.VPMULHRSW @@ -16632,14 +20638,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) { Opcode = Opcode.VPERMILPS @@ -16648,14 +20658,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 13(0x0D) { Opcode = Opcode.VPERMILPD @@ -16664,14 +20678,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 14(0x0E) { Opcode = Opcode.VTESTPS @@ -16680,14 +20698,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VTESTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 15(0x0F) { Opcode = Opcode.VTESTPD @@ -16696,14 +20718,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VTESTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 16(0x10) |] @@ -16718,14 +20744,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 20(0x14) |] @@ -16738,7 +20768,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.VPTEST @@ -16747,14 +20779,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTEST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) { Opcode = Opcode.VBROADCASTSS @@ -16763,28 +20799,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Mem Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 25(0x19) { Opcode = Opcode.VBROADCASTSD @@ -16793,14 +20837,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Mem Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 26(0x1A) { Opcode = Opcode.VBROADCASTF128 @@ -16809,7 +20857,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 27(0x1B) |] @@ -16820,14 +20870,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 29(0x1D) { Opcode = Opcode.VPABSW @@ -16836,14 +20890,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 30(0x1E) { Opcode = Opcode.VPABSD @@ -16852,14 +20910,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 31(0x1F) |] @@ -16870,14 +20932,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.VPMOVSXBD @@ -16886,14 +20952,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.VPMOVSXBQ @@ -16902,14 +20972,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) { Opcode = Opcode.VPMOVSXWD @@ -16918,14 +20992,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 36(0x24) { Opcode = Opcode.VPMOVSXWQ @@ -16934,14 +21012,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 37(0x25) { Opcode = Opcode.VPMOVSXDQ @@ -16950,14 +21032,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 38(0x26) |] @@ -16970,14 +21056,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.VPCMPEQQ @@ -16986,14 +21076,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.VMOVNTDQA @@ -17002,14 +21096,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.VPACKUSDW @@ -17018,14 +21116,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) { Opcode = Opcode.VMASKMOVPS @@ -17034,14 +21136,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 45(0x2D) { Opcode = Opcode.VMASKMOVPD @@ -17050,14 +21156,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 46(0x2E) { Opcode = Opcode.VMASKMOVPS @@ -17066,14 +21176,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 47(0x2F) { Opcode = Opcode.VMASKMOVPD @@ -17082,14 +21196,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 48(0x30) { Opcode = Opcode.VPMOVZXBW @@ -17098,14 +21216,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 49(0x31) { Opcode = Opcode.VPMOVZXBD @@ -17114,14 +21236,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 50(0x32) { Opcode = Opcode.VPMOVZXBQ @@ -17130,14 +21256,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 51(0x33) { Opcode = Opcode.VPMOVZXWD @@ -17146,14 +21276,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 52(0x34) { Opcode = Opcode.VPMOVZXWQ @@ -17162,14 +21296,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 53(0x35) { Opcode = Opcode.VPMOVZXDQ @@ -17178,14 +21316,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 54(0x36) { Opcode = Opcode.VPERMD @@ -17194,7 +21336,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 55(0x37) { Opcode = Opcode.VPCMPGTQ @@ -17203,14 +21347,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 56(0x38) { Opcode = Opcode.VPMINSB @@ -17219,14 +21367,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 57(0x39) { Opcode = Opcode.VPMINSD @@ -17235,14 +21387,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 58(0x3A) { Opcode = Opcode.VPMINUW @@ -17251,14 +21407,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 59(0x3B) { Opcode = Opcode.VPMINUD @@ -17267,14 +21427,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 60(0x3C) { Opcode = Opcode.VPMAXSB @@ -17283,14 +21447,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 61(0x3D) { Opcode = Opcode.VPMAXSD @@ -17299,14 +21467,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 62(0x3E) { Opcode = Opcode.VPMAXUW @@ -17315,14 +21487,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 63(0x3F) { Opcode = Opcode.VPMAXUD @@ -17331,14 +21507,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 64(0x40) { Opcode = Opcode.VPMULLD @@ -17347,14 +21527,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 65(0x41) { Opcode = Opcode.VPHMINPOSUW @@ -17363,7 +21547,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 66(0x42) |] @@ -17378,28 +21564,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 70(0x46) { Opcode = Opcode.VPSRAVD @@ -17408,14 +21602,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 71(0x47) { Opcode = Opcode.VPSLLVD @@ -17424,28 +21622,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 72(0x48) |] @@ -17456,28 +21662,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| NoOpr |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 74(0x4A) |] @@ -17488,21 +21702,27 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "SIBMEM"; Unknown "TMM1" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 76(0x4C) |] @@ -17519,56 +21739,72 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 81(0x51) { Opcode = Opcode.InvalOP @@ -17577,56 +21813,72 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) { Opcode = Opcode.VPDPWSSD @@ -17635,14 +21887,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 83(0x53) { Opcode = Opcode.VPDPWSSDS @@ -17651,14 +21907,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 84(0x54) |] @@ -17675,14 +21935,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 89(0x59) { Opcode = Opcode.VPBROADCASTQ @@ -17691,14 +21955,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 90(0x5A) { Opcode = Opcode.VBROADCASTI128 @@ -17707,7 +21975,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 91(0x5B) |] @@ -17718,14 +21988,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 93(0x5D) |] @@ -17736,28 +22010,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 95(0x5F) |] @@ -17804,14 +22086,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) |] @@ -17830,14 +22116,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 121(0x79) { Opcode = Opcode.VPBROADCASTW @@ -17846,14 +22136,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 122(0x7A) |] @@ -17898,28 +22192,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 141(0x8D) |] @@ -17930,28 +22232,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] - OpEn = OpEn.MVR } + OpEn = OpEn.MVR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 143(0x8F) |] @@ -17962,28 +22272,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 145(0x91) { Opcode = Opcode.VPGATHERQD @@ -17992,28 +22310,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 146(0x92) { Opcode = Opcode.VGATHERDPD @@ -18022,28 +22348,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 147(0x93) { Opcode = Opcode.VGATHERQPD @@ -18052,28 +22386,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 148(0x94) |] @@ -18086,28 +22428,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 151(0x97) { Opcode = Opcode.VFMSUBADD132PD @@ -18116,28 +22466,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 152(0x98) { Opcode = Opcode.VFMADD132PD @@ -18146,28 +22504,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 153(0x99) { Opcode = Opcode.VFMADD132SD @@ -18176,14 +22542,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 154(0x9A) { Opcode = Opcode.VFMSUB132PD @@ -18192,28 +22562,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 155(0x9B) { Opcode = Opcode.VFMSUB132SD @@ -18222,14 +22600,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 156(0x9C) { Opcode = Opcode.VFNMADD132PD @@ -18238,28 +22620,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 157(0x9D) { Opcode = Opcode.VFNMADD132SD @@ -18268,14 +22658,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 158(0x9E) { Opcode = Opcode.VFNMSUB132PD @@ -18284,28 +22678,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 159(0x9F) { Opcode = Opcode.VFNMSUB132SD @@ -18314,14 +22716,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 160(0xA0) |] @@ -18342,28 +22748,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 167(0xA7) { Opcode = Opcode.VFMSUBADD213PD @@ -18372,28 +22786,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 168(0xA8) { Opcode = Opcode.VFMADD213PD @@ -18402,28 +22824,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 169(0xA9) { Opcode = Opcode.VFMADD213SD @@ -18432,14 +22862,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 170(0xAA) { Opcode = Opcode.VFMSUB213PD @@ -18448,28 +22882,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 171(0xAB) { Opcode = Opcode.VFMSUB213SD @@ -18478,14 +22920,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 172(0xAC) { Opcode = Opcode.VFNMADD213PD @@ -18494,28 +22940,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 173(0xAD) { Opcode = Opcode.VFNMADD213SD @@ -18524,14 +22978,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 174(0xAE) { Opcode = Opcode.VFNMSUB213PD @@ -18540,28 +22998,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 175(0xAF) { Opcode = Opcode.VFNMSUB213SD @@ -18570,14 +23036,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 176(0xB0) { Opcode = Opcode.InvalOP @@ -18586,56 +23056,72 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 177(0xB1) { Opcode = Opcode.InvalOP @@ -18644,28 +23130,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 178(0xB2) |] @@ -18678,14 +23172,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 181(0xB5) { Opcode = Opcode.VPMADD52HUQ @@ -18694,14 +23192,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 182(0xB6) { Opcode = Opcode.VFMADDSUB231PD @@ -18710,28 +23212,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 183(0xB7) { Opcode = Opcode.VFMSUBADD231PD @@ -18740,28 +23250,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 184(0xB8) { Opcode = Opcode.VFMADD231PD @@ -18770,28 +23288,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 185(0xB9) { Opcode = Opcode.VFMADD231SD @@ -18800,14 +23326,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 186(0xBA) { Opcode = Opcode.VFMSUB231PD @@ -18816,28 +23346,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 187(0xBB) { Opcode = Opcode.VFMSUB231SD @@ -18846,14 +23384,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 188(0xBC) { Opcode = Opcode.VFNMADD231PD @@ -18862,28 +23404,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 189(0xBD) { Opcode = Opcode.VFNMADD231SD @@ -18892,14 +23442,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 190(0xBE) { Opcode = Opcode.VFNMSUB231PD @@ -18908,28 +23462,36 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 191(0xBF) { Opcode = Opcode.VFNMSUB231SD @@ -18938,14 +23500,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 192(0xC0) |] @@ -18976,7 +23542,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 204(0xCC) { Opcode = Opcode.InvalOP @@ -18985,7 +23553,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 205(0xCD) { Opcode = Opcode.InvalOP @@ -18994,7 +23564,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 206(0xCE) |] @@ -19005,14 +23577,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] @@ -19025,42 +23601,54 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 211(0xD3) { Opcode = Opcode.InvalOP @@ -19069,42 +23657,54 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 212(0xD4) |] @@ -19125,42 +23725,54 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 219(0xDB) { Opcode = Opcode.InvalOP @@ -19169,7 +23781,9 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 220(0xDC) { Opcode = Opcode.VAESENC @@ -19178,14 +23792,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.VAESENCLAST @@ -19194,14 +23812,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.VAESDEC @@ -19210,14 +23832,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.VAESDECLAST @@ -19226,14 +23852,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) { Opcode = Opcode.InvalOP @@ -19242,14 +23872,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 225(0xE1) { Opcode = Opcode.InvalOP @@ -19258,14 +23892,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 226(0xE2) { Opcode = Opcode.InvalOP @@ -19274,14 +23912,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 227(0xE3) { Opcode = Opcode.InvalOP @@ -19290,14 +23932,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 228(0xE4) { Opcode = Opcode.InvalOP @@ -19306,14 +23952,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 229(0xE5) { Opcode = Opcode.InvalOP @@ -19322,14 +23972,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 230(0xE6) { Opcode = Opcode.InvalOP @@ -19338,14 +23992,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 231(0xE7) { Opcode = Opcode.InvalOP @@ -19354,14 +24012,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 232(0xE8) { Opcode = Opcode.InvalOP @@ -19370,14 +24032,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 233(0xE9) { Opcode = Opcode.InvalOP @@ -19386,14 +24052,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 234(0xEA) { Opcode = Opcode.InvalOP @@ -19402,14 +24072,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 235(0xEB) { Opcode = Opcode.InvalOP @@ -19418,14 +24092,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 236(0xEC) { Opcode = Opcode.InvalOP @@ -19434,14 +24112,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 237(0xED) { Opcode = Opcode.InvalOP @@ -19450,14 +24132,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 238(0xEE) { Opcode = Opcode.InvalOP @@ -19466,14 +24152,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 239(0xEF) { Opcode = Opcode.InvalOP @@ -19482,14 +24172,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 240(0xF0) |] @@ -19502,14 +24196,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.ANDN PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 243(0xF3) { Opcode = Opcode.BLSI @@ -19518,42 +24216,54 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BLSI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BLSR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BLSR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.VM } + OpEn = OpEn.VM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 244(0xF4) |] @@ -19564,42 +24274,54 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BZHI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PDEP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PDEP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PEXT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.PEXT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 246(0xF6) { Opcode = Opcode.MULX @@ -19608,14 +24330,18 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.MULX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 247(0xF7) { Opcode = Opcode.BEXTR @@ -19624,56 +24350,72 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.BEXTR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SARX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SHLX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SHRX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SARX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SHLX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.SHRX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] - OpEn = OpEn.RMV } + OpEn = OpEn.RMV + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 248(0xF8) |] @@ -19702,7 +24444,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 1(0x01) { Opcode = Opcode.VPERMPD @@ -19711,7 +24455,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 2(0x02) { Opcode = Opcode.VPBLENDD @@ -19720,14 +24466,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 3(0x03) |] @@ -19738,14 +24488,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 5(0x05) { Opcode = Opcode.VPERMILPD @@ -19754,14 +24508,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 6(0x06) { Opcode = Opcode.VPERM2F128 @@ -19770,7 +24528,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 7(0x07) |] @@ -19781,14 +24541,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VROUNDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 9(0x09) { Opcode = Opcode.VROUNDPD @@ -19797,14 +24561,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VROUNDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) { Opcode = Opcode.VROUNDSS @@ -19813,7 +24581,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 11(0x0B) { Opcode = Opcode.VROUNDSD @@ -19822,7 +24592,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) { Opcode = Opcode.VBLENDPS @@ -19831,14 +24603,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 13(0x0D) { Opcode = Opcode.VBLENDPD @@ -19847,14 +24623,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 14(0x0E) { Opcode = Opcode.VPBLENDW @@ -19863,14 +24643,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 15(0x0F) { Opcode = Opcode.VPALIGNR @@ -19879,14 +24663,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 16(0x10) |] @@ -19903,7 +24691,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.VPEXTRW @@ -19912,7 +24702,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.VPEXTRD @@ -19921,14 +24713,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.VEXTRACTPS @@ -19937,7 +24733,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) { Opcode = Opcode.VINSERTF128 @@ -19946,7 +24744,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 25(0x19) { Opcode = Opcode.VEXTRACTF128 @@ -19955,7 +24755,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 26(0x1A) |] @@ -19970,14 +24772,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 30(0x1E) |] @@ -19990,7 +24796,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.VINSERTPS @@ -19999,7 +24807,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.VPINSRD @@ -20008,14 +24818,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) |] @@ -20050,14 +24864,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KSHIFTRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 49(0x31) { Opcode = Opcode.KSHIFTRQ @@ -20066,14 +24884,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KSHIFTRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 50(0x32) { Opcode = Opcode.KSHIFTLW @@ -20082,14 +24904,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KSHIFTLB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 51(0x33) { Opcode = Opcode.KSHIFTLQ @@ -20098,14 +24924,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.KSHIFTLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] - OpEn = OpEn.RRI } + OpEn = OpEn.RRI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 52(0x34) |] @@ -20122,7 +24952,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 57(0x39) { Opcode = Opcode.VEXTRACTI128 @@ -20131,7 +24963,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 58(0x3A) |] @@ -20152,14 +24986,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 65(0x41) { Opcode = Opcode.VDPPD @@ -20168,7 +25006,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 66(0x42) { Opcode = Opcode.VMPSADBW @@ -20177,14 +25017,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 67(0x43) |] @@ -20195,14 +25039,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 69(0x45) |] @@ -20213,7 +25061,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.RVMI } + OpEn = OpEn.RVMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 71(0x47) |] @@ -20228,14 +25078,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 75(0x4B) { Opcode = Opcode.VBLENDVPD @@ -20244,14 +25098,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 76(0x4C) { Opcode = Opcode.VPBLENDVB @@ -20260,14 +25118,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] - OpEn = OpEn.RVMR } + OpEn = OpEn.RVMR + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 77(0x4D) |] @@ -20314,7 +25176,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 97(0x61) { Opcode = Opcode.VPCMPESTRI @@ -20323,7 +25187,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 98(0x62) { Opcode = Opcode.VPCMPISTRM @@ -20332,7 +25198,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.VPCMPISTRI @@ -20341,7 +25209,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) |] @@ -20562,14 +25432,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 207(0xCF) { Opcode = Opcode.VGF2P8AFFINEINVQB @@ -20578,14 +25452,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] @@ -20622,7 +25500,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.InvalOP @@ -20631,7 +25511,9 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) |] @@ -20672,14 +25554,18 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.RORX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] - OpEn = OpEn.RMI } + OpEn = OpEn.RMI + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 241(0xF1) |] @@ -20754,70 +25640,90 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 17(0x11) { Opcode = Opcode.VMOVSD @@ -20826,70 +25732,90 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M64{K1}"; Reg Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M32{K1}"; Reg Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 18(0x12) { Opcode = Opcode.VMOVDDUP @@ -20898,63 +25824,81 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 19(0x13) { Opcode = Opcode.VMOVLPD @@ -20963,14 +25907,18 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 20(0x14) { Opcode = Opcode.VUNPCKLPD @@ -20979,42 +25927,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.VUNPCKHPD @@ -21023,42 +25983,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.VMOVHPD @@ -21067,42 +26039,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.RVM } + OpEn = OpEn.RVM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.VMOVHPD @@ -21111,14 +26095,18 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) |] @@ -21159,42 +26147,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.VMOVAPD @@ -21203,42 +26203,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.VCVTSI2SD @@ -21247,28 +26259,36 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.VMOVNTPD @@ -21277,42 +26297,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "M512"; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "M512"; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) { Opcode = Opcode.VCVTTSD2SI @@ -21321,28 +26353,36 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 45(0x2D) { Opcode = Opcode.VCVTSD2SI @@ -21351,28 +26391,36 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 46(0x2E) { Opcode = Opcode.VUCOMISD @@ -21381,14 +26429,18 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 47(0x2F) { Opcode = Opcode.VCOMISD @@ -21397,14 +26449,18 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 48(0x30) |] @@ -21479,56 +26535,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) |] @@ -21541,42 +26613,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 85(0x55) { Opcode = Opcode.VANDNPD @@ -21585,42 +26669,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 86(0x56) { Opcode = Opcode.VORPD @@ -21629,42 +26725,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 87(0x57) { Opcode = Opcode.VXORPD @@ -21673,42 +26781,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 88(0x58) { Opcode = Opcode.VADDPD @@ -21717,56 +26837,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 89(0x59) { Opcode = Opcode.VMULPD @@ -21775,56 +26911,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMULSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 90(0x5A) { Opcode = Opcode.VCVTPD2PS @@ -21833,56 +26985,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 91(0x5B) { Opcode = Opcode.VCVTDQ2PS @@ -21891,84 +27059,108 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 92(0x5C) { Opcode = Opcode.VSUBPD @@ -21977,56 +27169,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 93(0x5D) { Opcode = Opcode.VMINPD @@ -22035,56 +27243,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMINSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 94(0x5E) { Opcode = Opcode.VDIVPD @@ -22093,56 +27317,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 95(0x5F) { Opcode = Opcode.VMAXPD @@ -22151,56 +27391,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 96(0x60) { Opcode = Opcode.VPUNPCKLBW @@ -22209,21 +27465,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 97(0x61) { Opcode = Opcode.VPUNPCKLWD @@ -22232,21 +27494,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 98(0x62) { Opcode = Opcode.VPUNPCKLDQ @@ -22255,21 +27523,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.VPACKSSWB @@ -22278,21 +27552,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) { Opcode = Opcode.VPCMPGTB @@ -22301,21 +27581,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 101(0x65) { Opcode = Opcode.VPCMPGTW @@ -22324,21 +27610,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 102(0x66) { Opcode = Opcode.VPCMPGTD @@ -22347,21 +27639,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 103(0x67) { Opcode = Opcode.VPACKUSWB @@ -22370,21 +27668,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 104(0x68) { Opcode = Opcode.VPUNPCKHBW @@ -22393,21 +27697,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 105(0x69) { Opcode = Opcode.VPUNPCKHWD @@ -22416,21 +27726,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 106(0x6A) { Opcode = Opcode.VPUNPCKHDQ @@ -22439,21 +27755,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 107(0x6B) { Opcode = Opcode.VPACKSSDW @@ -22462,21 +27784,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 108(0x6C) { Opcode = Opcode.VPUNPCKLQDQ @@ -22485,21 +27813,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 109(0x6D) { Opcode = Opcode.VPUNPCKHQDQ @@ -22508,21 +27842,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 110(0x6E) { Opcode = Opcode.VMOVD @@ -22531,14 +27871,18 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R32/M32" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "R64/M64" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 111(0x6F) { Opcode = Opcode.VMOVDQA32 @@ -22547,126 +27891,162 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 112(0x70) { Opcode = Opcode.VPSHUFD @@ -22675,63 +28055,81 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 113(0x71) { Opcode = Opcode.VPSLLW @@ -22740,63 +28138,81 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 114(0x72) { Opcode = Opcode.VPSLLD @@ -22805,168 +28221,216 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) { Opcode = Opcode.VPSLLDQ @@ -22975,84 +28439,108 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F } + OpEn = OpEn.F + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 116(0x74) { Opcode = Opcode.VPCMPEQB @@ -23061,21 +28549,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 117(0x75) { Opcode = Opcode.VPCMPEQW @@ -23084,21 +28578,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 118(0x76) { Opcode = Opcode.VPCMPEQD @@ -23107,21 +28607,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 119(0x77) |] @@ -23132,112 +28638,144 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 121(0x79) { Opcode = Opcode.VCVTPD2UDQ @@ -23246,112 +28784,144 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz32; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz64; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 122(0x7A) { Opcode = Opcode.VCVTTPD2QQ @@ -23360,126 +28930,162 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 123(0x7B) { Opcode = Opcode.VCVTPD2QQ @@ -23488,70 +29094,90 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 124(0x7C) |] @@ -23564,21 +29190,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32/M32"; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64/M64"; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 127(0x7F) { Opcode = Opcode.VMOVDQA32 @@ -23587,126 +29219,162 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 128(0x80) |] @@ -23847,56 +29515,72 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 195(0xC3) |] @@ -23907,7 +29591,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 197(0xC5) { Opcode = Opcode.VPEXTRW @@ -23916,7 +29602,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 198(0xC6) { Opcode = Opcode.VSHUFPD @@ -23925,42 +29613,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 199(0xC7) |] @@ -23989,21 +29689,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 210(0xD2) { Opcode = Opcode.VPSRLD @@ -24012,21 +29718,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 211(0xD3) { Opcode = Opcode.VPSRLQ @@ -24035,21 +29747,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 212(0xD4) { Opcode = Opcode.VPADDQ @@ -24058,21 +29776,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 213(0xD5) { Opcode = Opcode.VPMULLW @@ -24081,21 +29805,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 214(0xD6) { Opcode = Opcode.VMOVQ @@ -24104,7 +29834,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 215(0xD7) |] @@ -24115,21 +29847,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 217(0xD9) { Opcode = Opcode.VPSUBUSW @@ -24138,21 +29876,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 218(0xDA) { Opcode = Opcode.VPMINUB @@ -24161,21 +29905,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 219(0xDB) { Opcode = Opcode.VPANDD @@ -24184,42 +29934,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 220(0xDC) { Opcode = Opcode.VPADDUSB @@ -24228,21 +29990,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.VPADDUSW @@ -24251,21 +30019,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.VPMAXUB @@ -24274,21 +30048,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.InvalOP @@ -24297,42 +30077,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) { Opcode = Opcode.VPAVGB @@ -24341,21 +30133,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 225(0xE1) { Opcode = Opcode.VPSRAW @@ -24364,21 +30162,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 226(0xE2) { Opcode = Opcode.VPSRAD @@ -24387,42 +30191,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 227(0xE3) { Opcode = Opcode.VPAVGW @@ -24431,21 +30247,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 228(0xE4) { Opcode = Opcode.VPMULHUW @@ -24454,21 +30276,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 229(0xE5) { Opcode = Opcode.VPMULHW @@ -24477,21 +30305,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 230(0xE6) { Opcode = Opcode.VCVTDQ2PD @@ -24500,84 +30334,108 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 231(0xE7) { Opcode = Opcode.VMOVNTDQ @@ -24586,21 +30444,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128"; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256"; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "M512"; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 232(0xE8) { Opcode = Opcode.VPSUBSB @@ -24609,21 +30473,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 233(0xE9) { Opcode = Opcode.VPSUBSW @@ -24632,21 +30502,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 234(0xEA) { Opcode = Opcode.VPMINSW @@ -24655,21 +30531,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 235(0xEB) { Opcode = Opcode.VPORD @@ -24678,42 +30560,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 236(0xEC) { Opcode = Opcode.VPADDSB @@ -24722,21 +30616,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 237(0xED) { Opcode = Opcode.VPADDSW @@ -24745,21 +30645,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 238(0xEE) { Opcode = Opcode.VPMAXSW @@ -24768,21 +30674,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 239(0xEF) { Opcode = Opcode.VPXORD @@ -24791,42 +30703,54 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 240(0xF0) |] @@ -24837,21 +30761,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 242(0xF2) { Opcode = Opcode.VPSLLD @@ -24860,21 +30790,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 243(0xF3) { Opcode = Opcode.VPSLLQ @@ -24883,21 +30819,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] - OpEn = OpEn.G } + OpEn = OpEn.G + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 244(0xF4) { Opcode = Opcode.VPMULUDQ @@ -24906,21 +30848,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 245(0xF5) { Opcode = Opcode.VPMADDWD @@ -24929,21 +30877,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 246(0xF6) { Opcode = Opcode.VPSADBW @@ -24952,21 +30906,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 247(0xF7) |] @@ -24977,21 +30937,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 249(0xF9) { Opcode = Opcode.VPSUBW @@ -25000,21 +30966,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 250(0xFA) { Opcode = Opcode.VPSUBD @@ -25023,21 +30995,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 251(0xFB) { Opcode = Opcode.VPSUBQ @@ -25046,21 +31024,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 252(0xFC) { Opcode = Opcode.VPADDB @@ -25069,21 +31053,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 253(0xFD) { Opcode = Opcode.VPADDW @@ -25092,21 +31082,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 254(0xFE) { Opcode = Opcode.VPADDD @@ -25115,21 +31111,27 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 255(0xFF) |] @@ -25144,21 +31146,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 1(0x01) |] @@ -25173,21 +31181,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 5(0x05) |] @@ -25208,21 +31222,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) { Opcode = Opcode.VPERMILPS @@ -25231,21 +31251,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 13(0x0D) { Opcode = Opcode.VPERMILPD @@ -25254,21 +31280,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 14(0x0E) |] @@ -25281,42 +31313,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 17(0x11) { Opcode = Opcode.VPMOVUSDB @@ -25325,42 +31369,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 18(0x12) { Opcode = Opcode.VPMOVUSQB @@ -25369,42 +31425,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 19(0x13) { Opcode = Opcode.VCVTPH2PS @@ -25413,42 +31481,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 20(0x14) { Opcode = Opcode.VPMOVUSQW @@ -25457,63 +31537,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.VPMOVUSQD @@ -25522,63 +31620,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.VPERMPD @@ -25587,28 +31703,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) |] @@ -25619,21 +31743,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 25(0x19) { Opcode = Opcode.VBROADCASTSD @@ -25642,28 +31772,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 26(0x1A) { Opcode = Opcode.InvalOP @@ -25672,28 +31810,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M128" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M128" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 27(0x1B) { Opcode = Opcode.InvalOP @@ -25702,14 +31848,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M256" |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M256" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 28(0x1C) { Opcode = Opcode.VPABSB @@ -25718,21 +31868,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 29(0x1D) { Opcode = Opcode.VPABSW @@ -25741,21 +31897,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 30(0x1E) { Opcode = Opcode.VPABSD @@ -25764,21 +31926,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 31(0x1F) { Opcode = Opcode.VPABSQ @@ -25787,21 +31955,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 32(0x20) { Opcode = Opcode.VPMOVSXBW @@ -25810,42 +31984,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.VPMOVSXBD @@ -25854,42 +32040,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.VPMOVSXBQ @@ -25898,42 +32096,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) { Opcode = Opcode.VPMOVSXWD @@ -25942,42 +32152,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 36(0x24) { Opcode = Opcode.VPMOVSXWQ @@ -25986,42 +32208,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 37(0x25) { Opcode = Opcode.VPMOVSXDQ @@ -26030,42 +32264,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 38(0x26) { Opcode = Opcode.VPTESTMB @@ -26074,84 +32320,108 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 39(0x27) { Opcode = Opcode.VPTESTMD @@ -26160,84 +32430,108 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 40(0x28) { Opcode = Opcode.VPMULDQ @@ -26246,63 +32540,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 41(0x29) { Opcode = Opcode.VPCMPEQQ @@ -26311,63 +32623,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz512 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz512 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 42(0x2A) { Opcode = Opcode.VMOVNTDQA @@ -26376,42 +32706,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M512" |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 43(0x2B) { Opcode = Opcode.VPACKUSDW @@ -26420,21 +32762,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 44(0x2C) { Opcode = Opcode.VSCALEFPD @@ -26443,42 +32791,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 45(0x2D) { Opcode = Opcode.VSCALEFSD @@ -26487,14 +32847,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCALEFSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 46(0x2E) |] @@ -26507,42 +32871,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 49(0x31) { Opcode = Opcode.VPMOVZXBD @@ -26551,42 +32927,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 50(0x32) { Opcode = Opcode.VPMOVZXBQ @@ -26595,42 +32983,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 51(0x33) { Opcode = Opcode.VPMOVZXWD @@ -26639,42 +33039,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 52(0x34) { Opcode = Opcode.VPMOVZXWQ @@ -26683,42 +33095,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 53(0x35) { Opcode = Opcode.VPMOVZXDQ @@ -26727,42 +33151,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 54(0x36) { Opcode = Opcode.VPERMD @@ -26771,28 +33207,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 55(0x37) { Opcode = Opcode.VPCMPGTQ @@ -26801,21 +33245,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 56(0x38) { Opcode = Opcode.VPMINSB @@ -26824,63 +33274,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 57(0x39) { Opcode = Opcode.VPMINSD @@ -26889,84 +33357,108 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz512 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz128 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz256 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1"; Reg Sz512 |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 58(0x3A) { Opcode = Opcode.VPMINUW @@ -26975,42 +33467,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "K1" |] - OpEn = OpEn.RM } + OpEn = OpEn.RM + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 59(0x3B) { Opcode = Opcode.VPMINUD @@ -27019,42 +33523,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 60(0x3C) { Opcode = Opcode.VPMAXSB @@ -27063,21 +33579,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 61(0x3D) { Opcode = Opcode.VPMAXSD @@ -27086,42 +33608,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 62(0x3E) { Opcode = Opcode.VPMAXUW @@ -27130,21 +33664,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 63(0x3F) { Opcode = Opcode.VPMAXUD @@ -27153,42 +33693,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 64(0x40) { Opcode = Opcode.VPMULLD @@ -27197,42 +33749,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 65(0x41) |] @@ -27243,42 +33807,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 67(0x43) { Opcode = Opcode.VGETEXPSD @@ -27287,14 +33863,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETEXPSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 68(0x44) { Opcode = Opcode.VPLZCNTD @@ -27303,42 +33883,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 69(0x45) { Opcode = Opcode.VPSRLVD @@ -27347,42 +33939,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 70(0x46) { Opcode = Opcode.VPSRAVD @@ -27391,42 +33995,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 71(0x47) { Opcode = Opcode.VPSLLVD @@ -27435,42 +34051,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 72(0x48) |] @@ -27487,42 +34115,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 77(0x4D) { Opcode = Opcode.VRCP14SD @@ -27531,14 +34171,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP14SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 78(0x4E) { Opcode = Opcode.VRSQRT14PD @@ -27547,42 +34191,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 79(0x4F) { Opcode = Opcode.VRSQRT14SD @@ -27591,14 +34247,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT14SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 80(0x50) { Opcode = Opcode.VPDPBUSD @@ -27607,21 +34267,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 81(0x51) { Opcode = Opcode.VPDPBUSDS @@ -27630,21 +34296,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) { Opcode = Opcode.VDPBF16PS @@ -27653,49 +34325,63 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP4DPWSSD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 83(0x53) { Opcode = Opcode.VPDPWSSDS @@ -27704,28 +34390,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP4DPWSSDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 84(0x54) { Opcode = Opcode.VPOPCNTB @@ -27734,42 +34428,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 85(0x55) { Opcode = Opcode.VPOPCNTD @@ -27778,42 +34484,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 86(0x56) |] @@ -27826,21 +34544,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 89(0x59) { Opcode = Opcode.VPBROADCASTQ @@ -27849,42 +34573,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 90(0x5A) { Opcode = Opcode.VBROADCASTI32X4 @@ -27893,28 +34629,36 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M128" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M128" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M128" |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 91(0x5B) { Opcode = Opcode.VBROADCASTI32X8 @@ -27923,14 +34667,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M256" |] - OpEn = OpEn.E } + OpEn = OpEn.E + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBROADCASTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M256" |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 92(0x5C) |] @@ -27951,84 +34699,108 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "M256" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "M512" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 99(0x63) { Opcode = Opcode.VPCOMPRESSB @@ -28037,84 +34809,108 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "M512{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "M128{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "M256{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "M512{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 100(0x64) { Opcode = Opcode.VPBLENDMD @@ -28123,42 +34919,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 101(0x65) { Opcode = Opcode.VBLENDMPD @@ -28167,42 +34975,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 102(0x66) { Opcode = Opcode.VPBLENDMB @@ -28211,42 +35031,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 103(0x67) |] @@ -28257,42 +35089,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 105(0x69) |] @@ -28315,21 +35159,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 113(0x71) { Opcode = Opcode.VPSHLDVD @@ -28338,42 +35188,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 114(0x72) { Opcode = Opcode.VCVTNE2PS2BF16 @@ -28382,63 +35244,81 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) { Opcode = Opcode.VPSHRDVD @@ -28447,42 +35327,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 116(0x74) |] @@ -28493,42 +35385,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 118(0x76) { Opcode = Opcode.VPERMI2D @@ -28537,42 +35441,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 119(0x77) { Opcode = Opcode.VPERMI2PS @@ -28581,42 +35497,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 120(0x78) { Opcode = Opcode.VPBROADCASTB @@ -28625,21 +35553,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 121(0x79) { Opcode = Opcode.VPBROADCASTW @@ -28648,21 +35582,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 122(0x7A) { Opcode = Opcode.VPBROADCASTB @@ -28671,21 +35611,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 123(0x7B) { Opcode = Opcode.VPBROADCASTW @@ -28694,21 +35640,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Unknown "REG" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 124(0x7C) { Opcode = Opcode.VPBROADCASTD @@ -28717,42 +35669,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz32 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz64 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 125(0x7D) { Opcode = Opcode.VPERMT2B @@ -28761,42 +35725,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 126(0x7E) { Opcode = Opcode.VPERMT2D @@ -28805,42 +35781,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 127(0x7F) { Opcode = Opcode.VPERMT2PS @@ -28849,42 +35837,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 128(0x80) |] @@ -28899,21 +35899,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 132(0x84) |] @@ -28930,42 +35936,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 137(0x89) { Opcode = Opcode.VPEXPANDD @@ -28974,42 +35992,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 138(0x8A) { Opcode = Opcode.VCOMPRESSPD @@ -29018,42 +36048,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 139(0x8B) { Opcode = Opcode.VPCOMPRESSD @@ -29062,42 +36104,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 140(0x8C) |] @@ -29108,42 +36162,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 142(0x8E) |] @@ -29154,21 +36220,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 144(0x90) { Opcode = Opcode.VPGATHERDD @@ -29177,42 +36249,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM32Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM32Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM32Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 145(0x91) { Opcode = Opcode.VPGATHERQD @@ -29221,42 +36305,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM64Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM64Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM64Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 146(0x92) { Opcode = Opcode.VGATHERDPS @@ -29265,42 +36361,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM32Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM32Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM32X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM32Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 147(0x93) { Opcode = Opcode.VGATHERQPS @@ -29309,42 +36417,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM64Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "VM64X" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Unknown "VM64Y" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Reg Sz512; Unknown "VM64Z" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 148(0x94) |] @@ -29357,42 +36477,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 151(0x97) { Opcode = Opcode.VFMSUBADD132PD @@ -29401,42 +36533,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 152(0x98) { Opcode = Opcode.VFMADD132PD @@ -29445,42 +36589,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 153(0x99) { Opcode = Opcode.VFMADD132SD @@ -29489,14 +36645,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 154(0x9A) { Opcode = Opcode.VFMSUB132PD @@ -29505,49 +36665,63 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.V4FMADDPS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 155(0x9B) { Opcode = Opcode.VFMSUB132SD @@ -29556,21 +36730,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.V4FMADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 156(0x9C) { Opcode = Opcode.VFNMADD132PD @@ -29579,42 +36759,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 157(0x9D) { Opcode = Opcode.VFNMADD132SD @@ -29623,14 +36815,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 158(0x9E) { Opcode = Opcode.VFNMSUB132PD @@ -29639,42 +36835,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 159(0x9F) { Opcode = Opcode.VFNMSUB132SD @@ -29683,14 +36891,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 160(0xA0) { Opcode = Opcode.VPSCATTERDD @@ -29699,42 +36911,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 161(0xA1) { Opcode = Opcode.VPSCATTERQD @@ -29743,42 +36967,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 162(0xA2) { Opcode = Opcode.VSCATTERDPS @@ -29787,42 +37023,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 163(0xA3) { Opcode = Opcode.VSCATTERQPS @@ -29831,42 +37079,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 164(0xA4) |] @@ -29879,42 +37139,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 167(0xA7) { Opcode = Opcode.VFMSUBADD213PD @@ -29923,42 +37195,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 168(0xA8) { Opcode = Opcode.VFMADD213PD @@ -29967,42 +37251,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 169(0xA9) { Opcode = Opcode.VFMADD213SD @@ -30011,14 +37307,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 170(0xAA) { Opcode = Opcode.VFMSUB213PD @@ -30027,49 +37327,63 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.V4FNMADDPS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 171(0xAB) { Opcode = Opcode.VFMSUB213SD @@ -30078,21 +37392,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.V4FNMADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 172(0xAC) { Opcode = Opcode.VFNMADD213PD @@ -30101,42 +37421,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 173(0xAD) { Opcode = Opcode.VFNMADD213SD @@ -30145,14 +37477,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 174(0xAE) { Opcode = Opcode.VFNMSUB213PD @@ -30161,42 +37497,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 175(0xAF) { Opcode = Opcode.VFNMSUB213SD @@ -30205,14 +37553,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 176(0xB0) |] @@ -30229,21 +37581,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 181(0xB5) { Opcode = Opcode.VPMADD52HUQ @@ -30252,21 +37610,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 182(0xB6) { Opcode = Opcode.VFMADDSUB231PD @@ -30275,42 +37639,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 183(0xB7) { Opcode = Opcode.VFMSUBADD231PD @@ -30319,42 +37695,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 184(0xB8) { Opcode = Opcode.VFMADD231PD @@ -30363,42 +37751,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 185(0xB9) { Opcode = Opcode.VFMADD231SD @@ -30407,14 +37807,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 186(0xBA) { Opcode = Opcode.VFMSUB231PD @@ -30423,42 +37827,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 187(0xBB) { Opcode = Opcode.VFMSUB231SD @@ -30467,14 +37883,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 188(0xBC) { Opcode = Opcode.VFNMADD231PD @@ -30483,42 +37903,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 189(0xBD) { Opcode = Opcode.VFNMADD231SD @@ -30527,14 +37959,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 190(0xBE) { Opcode = Opcode.VFNMSUB231PD @@ -30543,42 +37979,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 191(0xBF) { Opcode = Opcode.VFNMSUB231SD @@ -30587,14 +38035,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 192(0xC0) |] @@ -30611,42 +38063,54 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 197(0xC5) |] @@ -30657,56 +38121,72 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "VM32Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF0DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "VM32Y{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF1DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "VM32Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF1DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "VM32Y{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF0DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "VM32Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF0DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "VM32Y{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF1DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "VM32Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF1DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "VM32Y{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 199(0xC7) { Opcode = Opcode.VGATHERPF0QPS @@ -30715,56 +38195,72 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF0QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF1QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGATHERPF1QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF0QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF0QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF1QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSCATTERPF1QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 Operands = [| Unknown "VM64Z{K1}" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 200(0xC8) { Opcode = Opcode.VEXP2PD @@ -30773,14 +38269,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXP2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 201(0xC9) |] @@ -30791,14 +38291,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP28PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 203(0xCB) { Opcode = Opcode.VRCP28SD @@ -30807,14 +38311,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRCP28SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 204(0xCC) { Opcode = Opcode.VRSQRT28PD @@ -30823,14 +38331,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT28PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 205(0xCD) { Opcode = Opcode.VRSQRT28SD @@ -30839,14 +38351,18 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRSQRT28SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 206(0xCE) |] @@ -30857,21 +38373,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] @@ -30904,21 +38426,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 221(0xDD) { Opcode = Opcode.VAESENCLAST @@ -30927,21 +38455,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 222(0xDE) { Opcode = Opcode.VAESDEC @@ -30950,21 +38484,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 223(0xDF) { Opcode = Opcode.VAESDECLAST @@ -30973,21 +38513,27 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 224(0xE0) |] @@ -31064,14 +38610,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 1(0x01) { Opcode = Opcode.VPERMPD @@ -31080,14 +38630,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 2(0x02) |] @@ -31098,42 +38652,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VALIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VALIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 4(0x04) { Opcode = Opcode.VPERMILPS @@ -31142,21 +38708,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 5(0x05) { Opcode = Opcode.VPERMILPD @@ -31165,21 +38737,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 6(0x06) |] @@ -31192,42 +38770,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 9(0x09) { Opcode = Opcode.VRNDSCALEPD @@ -31236,21 +38826,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 10(0x0A) { Opcode = Opcode.InvalOP @@ -31259,14 +38855,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRNDSCALESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 11(0x0B) { Opcode = Opcode.VRNDSCALESD @@ -31275,7 +38875,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 12(0x0C) |] @@ -31290,21 +38892,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 16(0x10) |] @@ -31321,7 +38929,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 21(0x15) { Opcode = Opcode.VPEXTRW @@ -31330,7 +38940,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 22(0x16) { Opcode = Opcode.VPEXTRD @@ -31339,14 +38951,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 23(0x17) { Opcode = Opcode.VEXTRACTPS @@ -31355,7 +38971,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 24(0x18) { Opcode = Opcode.VINSERTF32X4 @@ -31364,28 +38982,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 25(0x19) { Opcode = Opcode.VEXTRACTF32X4 @@ -31394,28 +39020,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 26(0x1A) { Opcode = Opcode.InvalOP @@ -31424,14 +39058,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTF64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 27(0x1B) { Opcode = Opcode.VEXTRACTF32X8 @@ -31440,14 +39078,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTF64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 28(0x1C) |] @@ -31458,21 +39100,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 30(0x1E) { Opcode = Opcode.VPCMPUD @@ -31481,42 +39129,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 31(0x1F) { Opcode = Opcode.VPCMPD @@ -31525,42 +39185,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 32(0x20) { Opcode = Opcode.VPINSRB @@ -31569,7 +39241,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 33(0x21) { Opcode = Opcode.VINSERTPS @@ -31578,7 +39252,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 34(0x22) { Opcode = Opcode.VPINSRD @@ -31587,14 +39263,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M32"; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 35(0x23) { Opcode = Opcode.VSHUFF32X4 @@ -31603,28 +39283,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 36(0x24) |] @@ -31635,42 +39323,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 38(0x26) { Opcode = Opcode.VGETMANTPD @@ -31679,63 +39379,81 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 39(0x27) { Opcode = Opcode.VGETMANTSD @@ -31744,21 +39462,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGETMANTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 40(0x28) |] @@ -31799,28 +39523,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 57(0x39) { Opcode = Opcode.VEXTRACTI32X4 @@ -31829,28 +39561,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 58(0x3A) { Opcode = Opcode.VINSERTI32X8 @@ -31859,14 +39599,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VINSERTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 59(0x3B) { Opcode = Opcode.VEXTRACTI32X8 @@ -31875,14 +39619,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.D } + OpEn = OpEn.D + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VEXTRACTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 60(0x3C) |] @@ -31895,42 +39643,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 63(0x3F) { Opcode = Opcode.VPCMPB @@ -31939,42 +39699,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 64(0x40) |] @@ -31987,21 +39759,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 67(0x43) { Opcode = Opcode.VSHUFI32X4 @@ -32010,28 +39788,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 68(0x44) { Opcode = Opcode.VPCLMULQDQ @@ -32040,21 +39826,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 69(0x45) |] @@ -32085,42 +39877,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 81(0x51) { Opcode = Opcode.VRANGESD @@ -32129,14 +39933,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VRANGESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 82(0x52) |] @@ -32149,42 +39957,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 85(0x55) { Opcode = Opcode.VFIXUPIMMSD @@ -32193,14 +40013,18 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFIXUPIMMSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 86(0x56) { Opcode = Opcode.VREDUCEPD @@ -32209,63 +40033,81 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 87(0x57) { Opcode = Opcode.VREDUCESD @@ -32274,21 +40116,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Unknown "IMM8/R" |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VREDUCESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 88(0x58) |] @@ -32325,63 +40173,81 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 103(0x67) { Opcode = Opcode.VFPCLASSSD @@ -32390,21 +40256,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VFPCLASSSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 104(0x68) |] @@ -32429,21 +40301,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 113(0x71) { Opcode = Opcode.VPSHLDD @@ -32452,42 +40330,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 114(0x72) { Opcode = Opcode.VPSHRDW @@ -32496,21 +40386,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 115(0x73) { Opcode = Opcode.VPSHRDD @@ -32519,42 +40415,54 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B } + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 116(0x74) |] @@ -32719,28 +40627,36 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A } + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 195(0xC3) |] @@ -32771,21 +40687,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 207(0xCF) { Opcode = Opcode.VGF2P8AFFINEINVQB @@ -32794,21 +40716,27 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } { Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C } + OpEn = OpEn.C + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 208(0xD0) |] diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 53a576c79..13e536455 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -115,6 +115,23 @@ type OpEn = | VM = 34 | ZO = 35 +type Mode64 = + | None = 0 + | NE = 1 + | NA = 2 + | NS = 3 + | Valid = 4 + | Invalid = 5 + | VNE = 6 + | Inv = 7 + +type CompatLegMode = + | None = 0 + | NE = 1 + | NA = 2 + | Valid = 3 + | Invalid = 4 + /// Core instruction representation used in the generated source code. type InstructionCore = { Opcode: Opcode @@ -123,4 +140,6 @@ type InstructionCore = VectorLength: VectorLength ModRM: ModRMType Operands: OperandType[] - OpEn: OpEn } \ No newline at end of file + OpEn: OpEn + Mode64: Mode64 + Compat: CompatLegMode } \ No newline at end of file diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 9a3fd9c8f..f54e343b1 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -105,19 +105,25 @@ type IntelParser(wordSz, reader) = | _ -> None) operands |> Array.distinct - let checkPrefix pref insPref operands = + let checkPrefix pref insPref compat = match pref with - // Legacy prefixes are not explicitly specified in the manual. - | Legacy P66 -> - match getOperandSize operands with - | [| Some sz |] -> - match sz with - | Sz16 -> true - | _ -> false - | _ -> true - | Mandatory _ -> pref = insPref + | Mandatory NP -> true + | Mandatory _ when compat = CompatLegMode.None -> pref = insPref + | _ -> true + + let checkSize pref operands = + let oprSz = getOperandSize operands + match oprSz with + | [| Some Sz16 |] | [| Some Sz16; _ |] | [| Some Sz16; _ |] -> + pref = Legacy P66 || pref = Mandatory P66 // XXX: NP | _ -> true + let checkCPUMode wordSize mode64 compat = + match wordSize with + | WordSize.Bit64 -> mode64 <> Mode64.NE && mode64 <> Mode64.NS // ?? + | WordSize.Bit32 -> compat <> CompatLegMode.NE + | _ -> failwith "Unsupported word size." + let isGroupOpcode = function | ModRMType.ModRMOp0 | ModRMType.ModRMOp1 | ModRMType.ModRMOp2 | ModRMType.ModRMOp3 | ModRMType.ModRMOp4 | ModRMType.ModRMOp5 @@ -137,7 +143,7 @@ type IntelParser(wordSz, reader) = | 5uy -> modRMType = ModRMType.ModRMOp5 | 6uy -> modRMType = ModRMType.ModRMOp6 | 7uy -> modRMType = ModRMType.ModRMOp7 - | x -> false + | _ -> false else true let findSubIndex span (phlp: ParsingHelper) (ins: InstructionCore[]) = @@ -150,17 +156,24 @@ type IntelParser(wordSz, reader) = let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] - if (checkPrefix pref insCore.PrefixType insCore.Operands) && - (checkREXPrefix phlp.REXPrefix insCore.REXPrefixType) && - (checkVectorLength phlp.VEXInfo insCore.VectorLength) && - (checkGroupOpcode span phlp insCore.ModRM) - then idx <- i + let p = checkPrefix pref insCore.PrefixType insCore.Compat + let s = checkSize pref insCore.Operands + let c = checkCPUMode phlp.WordSize insCore.Mode64 insCore.Compat + let r = checkREXPrefix phlp.REXPrefix insCore.REXPrefixType + let v = checkVectorLength phlp.VEXInfo insCore.VectorLength + let g = checkGroupOpcode span phlp insCore.ModRM +#if DEBUG + printfn "Checking %d: p=%b, s=%b, r=%b, v=%b, g=%b" i p s r v g +#endif + if p && c && s && r && v && g then idx <- i else () i <- i + 1 if idx = -1 then +#if DEBUG printfn "Fail: find sub index\n maps: %A, pref: %A, rex: %A, vex: %A" phlp.OpcodeClass pref phlp.REXPrefix phlp.VEXInfo Array.iter (printfn " %A") ins +#endif failwithf "No matching instruction format." else () idx @@ -195,6 +208,19 @@ type IntelParser(wordSz, reader) = OperandParsers.parseOprImm span phlp (oprSzToRegType sz) | Rel sz -> OperandParsers.parseOprForRelJmp span phlp (oprSzToRegType sz) + | Unknown s -> // FIXME: need unknown operand type handling logic + match s with + | "M" -> + // FIXME: need operand size determination logic + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) + phlp.MemEffOprSize <- effOprSz + phlp.MemEffAddrSize <- effAddrSz + phlp.MemEffRegSize <- effOprSz + phlp.RegSize <- effOprSz + phlp.OperationSize <- effOprSz + OperandParsers.parseMemory modRM span (phlp: ParsingHelper) + | _ -> failwithf "Unsupported operand type: %s" s | o -> failwithf "Unsupported operand type: %A" o @@ -345,7 +371,9 @@ type IntelParser(wordSz, reader) = | _ -> InstructionArrays.norOne[int (phlp.ReadByte span)] let subIdx = findSubIndex span phlp insCores - //printfn "InstructionCore: %A\nOpcode Class: %A" - // insCores[subIdx] phlp.OpcodeClass +#if DEBUG + printfn "InstructionCore: %A\nOpcode Class: %A" + insCores[subIdx] phlp.OpcodeClass +#endif let operands = parseOperands span phlp insCores[subIdx] newInstruction phlp insCores[subIdx].Opcode operands :> IInstruction \ No newline at end of file From 3920f86b24e72b4920e2f0cb8a34cf3ecf6f2754 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Fri, 6 Mar 2026 09:54:55 +0900 Subject: [PATCH 03/26] [Intel] Support additional operand types --- src/FrontEnd/Intel/Intel.fs | 15571 ++++++++++++++++++----------- src/FrontEnd/Intel/IntelTypes.fs | 15 +- src/FrontEnd/Intel/Parser.fs | 360 +- 3 files changed, 10099 insertions(+), 5847 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index f835b29d4..ef564265c 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -3,7 +3,8 @@ module B2R2.FrontEnd.Intel.InstructionArrays let (norOne: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.ADD + { OpcodeByte = 0u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14,7 +15,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 1(0x01) - { Opcode = Opcode.ADD + { OpcodeByte = 1u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -23,7 +25,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 1u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -32,7 +35,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 1u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -43,7 +47,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 2(0x02) - { Opcode = Opcode.ADD + { OpcodeByte = 2u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -54,7 +59,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 3(0x03) - { Opcode = Opcode.ADD + { OpcodeByte = 3u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -63,7 +69,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 3u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -72,7 +79,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 3u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -83,47 +91,52 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 4(0x04) - { Opcode = Opcode.ADD + { OpcodeByte = 4u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 5(0x05) - { Opcode = Opcode.ADD + { OpcodeByte = 5u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 5u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 5u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 6(0x06) - { Opcode = Opcode.PUSH + { OpcodeByte = 6u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -134,7 +147,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 7(0x07) - { Opcode = Opcode.POP + { OpcodeByte = 7u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -145,7 +159,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 8(0x08) - { Opcode = Opcode.OR + { OpcodeByte = 8u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -156,7 +171,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 9(0x09) - { Opcode = Opcode.OR + { OpcodeByte = 9u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -165,7 +181,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 9u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -174,7 +191,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 9u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -185,7 +203,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 10(0x0A) - { Opcode = Opcode.OR + { OpcodeByte = 10u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -196,7 +215,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) - { Opcode = Opcode.OR + { OpcodeByte = 11u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -205,7 +225,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 11u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -214,7 +235,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 11u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -225,47 +247,52 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 12(0x0C) - { Opcode = Opcode.OR + { OpcodeByte = 12u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) - { Opcode = Opcode.OR + { OpcodeByte = 13u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 13u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 13u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 14(0x0E) - { Opcode = Opcode.PUSH + { OpcodeByte = 14u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -278,7 +305,8 @@ let (norOne: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.ADC + { OpcodeByte = 16u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -289,7 +317,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 17(0x11) - { Opcode = Opcode.ADC + { OpcodeByte = 17u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -298,7 +327,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 17u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -307,7 +337,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 17u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -318,7 +349,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 18(0x12) - { Opcode = Opcode.ADC + { OpcodeByte = 18u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -329,7 +361,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 19(0x13) - { Opcode = Opcode.ADC + { OpcodeByte = 19u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -338,7 +371,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 19u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -347,7 +381,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 19u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -358,47 +393,52 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 20(0x14) - { Opcode = Opcode.ADC + { OpcodeByte = 20u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 21(0x15) - { Opcode = Opcode.ADC + { OpcodeByte = 21u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 21u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 21u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 22(0x16) - { Opcode = Opcode.PUSH + { OpcodeByte = 22u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -409,7 +449,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 23(0x17) - { Opcode = Opcode.POP + { OpcodeByte = 23u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -420,7 +461,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 24(0x18) - { Opcode = Opcode.SBB + { OpcodeByte = 24u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -431,7 +473,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 25(0x19) - { Opcode = Opcode.SBB + { OpcodeByte = 25u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -440,7 +483,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 25u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -449,7 +493,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 25u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -460,7 +505,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 26(0x1A) - { Opcode = Opcode.SBB + { OpcodeByte = 26u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -471,7 +517,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 27(0x1B) - { Opcode = Opcode.SBB + { OpcodeByte = 27u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -480,7 +527,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 27u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -489,7 +537,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 27u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -500,47 +549,52 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 28(0x1C) - { Opcode = Opcode.SBB + { OpcodeByte = 28u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) - { Opcode = Opcode.SBB + { OpcodeByte = 29u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 29u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 29u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 30(0x1E) - { Opcode = Opcode.PUSH + { OpcodeByte = 30u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -551,7 +605,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) - { Opcode = Opcode.POP + { OpcodeByte = 31u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -562,7 +617,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 32(0x20) - { Opcode = Opcode.AND + { OpcodeByte = 32u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -573,7 +629,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 33(0x21) - { Opcode = Opcode.AND + { OpcodeByte = 33u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -582,7 +639,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 33u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -591,7 +649,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 33u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -602,7 +661,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 34(0x22) - { Opcode = Opcode.AND + { OpcodeByte = 34u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -613,7 +673,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 35(0x23) - { Opcode = Opcode.AND + { OpcodeByte = 35u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -622,7 +683,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 35u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -631,7 +693,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 35u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -642,41 +705,45 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 36(0x24) - { Opcode = Opcode.AND + { OpcodeByte = 36u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 37(0x25) - { Opcode = Opcode.AND + { OpcodeByte = 37u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 37u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 37u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -684,7 +751,8 @@ let (norOne: InstructionCore[][]) = [| // index 38(0x26) |] [| // index 39(0x27) - { Opcode = Opcode.DAA + { OpcodeByte = 39u + Opcode = Opcode.DAA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -695,7 +763,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 40(0x28) - { Opcode = Opcode.SUB + { OpcodeByte = 40u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -706,7 +775,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 41(0x29) - { Opcode = Opcode.SUB + { OpcodeByte = 41u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -715,7 +785,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 41u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -724,7 +795,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 41u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -735,7 +807,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 42(0x2A) - { Opcode = Opcode.SUB + { OpcodeByte = 42u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -746,7 +819,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 43(0x2B) - { Opcode = Opcode.SUB + { OpcodeByte = 43u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -755,7 +829,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 43u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -764,7 +839,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 43u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -775,41 +851,45 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 44(0x2C) - { Opcode = Opcode.SUB + { OpcodeByte = 44u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 45(0x2D) - { Opcode = Opcode.SUB + { OpcodeByte = 45u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 45u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 45u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -817,7 +897,8 @@ let (norOne: InstructionCore[][]) = [| // index 46(0x2E) |] [| // index 47(0x2F) - { Opcode = Opcode.DAS + { OpcodeByte = 47u + Opcode = Opcode.DAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -828,7 +909,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 48(0x30) - { Opcode = Opcode.XOR + { OpcodeByte = 48u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -839,7 +921,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 49(0x31) - { Opcode = Opcode.XOR + { OpcodeByte = 49u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -848,7 +931,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 49u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -857,7 +941,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 49u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -868,18 +953,20 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 50(0x32) - { Opcode = Opcode.XOR + { OpcodeByte = 50u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz8; Unknown "1R/M8" |] + Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 51(0x33) - { Opcode = Opcode.XOR + { OpcodeByte = 51u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -888,7 +975,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 51u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -897,7 +985,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 51u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -908,41 +997,45 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 52(0x34) - { Opcode = Opcode.XOR + { OpcodeByte = 52u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 53(0x35) - { Opcode = Opcode.XOR + { OpcodeByte = 53u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 53u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 53u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -950,7 +1043,8 @@ let (norOne: InstructionCore[][]) = [| // index 54(0x36) |] [| // index 55(0x37) - { Opcode = Opcode.AAA + { OpcodeByte = 55u + Opcode = Opcode.AAA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -961,7 +1055,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 56(0x38) - { Opcode = Opcode.CMP + { OpcodeByte = 56u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -972,7 +1067,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 57(0x39) - { Opcode = Opcode.CMP + { OpcodeByte = 57u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -981,7 +1077,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 57u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -990,7 +1087,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 57u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1001,7 +1099,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 58(0x3A) - { Opcode = Opcode.CMP + { OpcodeByte = 58u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1012,7 +1111,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) - { Opcode = Opcode.CMP + { OpcodeByte = 59u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1021,7 +1121,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 59u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1030,7 +1131,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 59u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1041,41 +1143,45 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 60(0x3C) - { Opcode = Opcode.CMP + { OpcodeByte = 60u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 61(0x3D) - { Opcode = Opcode.CMP + { OpcodeByte = 61u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 61u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 61u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -1083,7 +1189,8 @@ let (norOne: InstructionCore[][]) = [| // index 62(0x3E) |] [| // index 63(0x3F) - { Opcode = Opcode.AAS + { OpcodeByte = 63u + Opcode = Opcode.AAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1094,7 +1201,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 64(0x40) - { Opcode = Opcode.INC + { OpcodeByte = 64u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1103,7 +1211,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.INC + { OpcodeByte = 64u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1128,7 +1237,8 @@ let (norOne: InstructionCore[][]) = [| // index 71(0x47) |] [| // index 72(0x48) - { Opcode = Opcode.DEC + { OpcodeByte = 72u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1137,7 +1247,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.DEC + { OpcodeByte = 72u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1162,7 +1273,8 @@ let (norOne: InstructionCore[][]) = [| // index 79(0x4F) |] [| // index 80(0x50) - { Opcode = Opcode.PUSH + { OpcodeByte = 80u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1171,7 +1283,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSH + { OpcodeByte = 80u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1180,7 +1293,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSH + { OpcodeByte = 80u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1205,7 +1319,8 @@ let (norOne: InstructionCore[][]) = [| // index 87(0x57) |] [| // index 88(0x58) - { Opcode = Opcode.POP + { OpcodeByte = 88u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1214,7 +1329,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 88u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1223,7 +1339,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 88u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1248,7 +1365,8 @@ let (norOne: InstructionCore[][]) = [| // index 95(0x5F) |] [| // index 96(0x60) - { Opcode = Opcode.PUSHA + { OpcodeByte = 96u + Opcode = Opcode.PUSHA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1257,7 +1375,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSHAD + { OpcodeByte = 96u + Opcode = Opcode.PUSHAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1268,7 +1387,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 97(0x61) - { Opcode = Opcode.POPA + { OpcodeByte = 97u + Opcode = Opcode.POPA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1277,7 +1397,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POPAD + { OpcodeByte = 97u + Opcode = Opcode.POPAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1288,7 +1409,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 98(0x62) - { Opcode = Opcode.BOUND + { OpcodeByte = 98u + Opcode = Opcode.BOUND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1297,7 +1419,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BOUND + { OpcodeByte = 98u + Opcode = Opcode.BOUND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1308,7 +1431,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 99(0x63) - { Opcode = Opcode.ARPL + { OpcodeByte = 99u + Opcode = Opcode.ARPL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1317,7 +1441,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSXD + { OpcodeByte = 99u + Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1326,7 +1451,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOVSXD + { OpcodeByte = 99u + Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1335,7 +1461,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOVSXD + { OpcodeByte = 99u + Opcode = Opcode.MOVSXD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1354,7 +1481,8 @@ let (norOne: InstructionCore[][]) = [| // index 103(0x67) |] [| // index 104(0x68) - { Opcode = Opcode.PUSH + { OpcodeByte = 104u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1363,7 +1491,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSH + { OpcodeByte = 104u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1374,7 +1503,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 105(0x69) - { Opcode = Opcode.IMUL + { OpcodeByte = 105u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1383,7 +1513,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 105u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1392,7 +1523,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 105u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1403,7 +1535,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 106(0x6A) - { Opcode = Opcode.PUSH + { OpcodeByte = 106u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1414,7 +1547,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 107(0x6B) - { Opcode = Opcode.IMUL + { OpcodeByte = 107u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1423,7 +1557,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 107u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1432,7 +1567,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 107u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1443,16 +1579,18 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 108(0x6C) - { Opcode = Opcode.INS + { OpcodeByte = 108u + Opcode = Opcode.INS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8; Unknown "DX" |] + Operands = [| Mem Sz8; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INSB + { OpcodeByte = 108u + Opcode = Opcode.INSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1463,25 +1601,28 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 109(0x6D) - { Opcode = Opcode.INS + { OpcodeByte = 109u + Opcode = Opcode.INS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16; Unknown "DX" |] + Operands = [| Mem Sz16; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INS + { OpcodeByte = 109u + Opcode = Opcode.INS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Unknown "DX" |] + Operands = [| Mem Sz32; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INSW + { OpcodeByte = 109u + Opcode = Opcode.INSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1490,7 +1631,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INSD + { OpcodeByte = 109u + Opcode = Opcode.INSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1501,16 +1643,18 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 110(0x6E) - { Opcode = Opcode.OUTS + { OpcodeByte = 110u + Opcode = Opcode.OUTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Mem Sz8 |] + Operands = [| FixedReg(Register.DX, Explicit); Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUTSB + { OpcodeByte = 110u + Opcode = Opcode.OUTSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1521,25 +1665,28 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 111(0x6F) - { Opcode = Opcode.OUTS + { OpcodeByte = 111u + Opcode = Opcode.OUTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Mem Sz16 |] + Operands = [| FixedReg(Register.DX, Explicit); Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUTS + { OpcodeByte = 111u + Opcode = Opcode.OUTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Mem Sz32 |] + Operands = [| FixedReg(Register.DX, Explicit); Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUTSW + { OpcodeByte = 111u + Opcode = Opcode.OUTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1548,7 +1695,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUTSD + { OpcodeByte = 111u + Opcode = Opcode.OUTSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1559,7 +1707,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 112(0x70) - { Opcode = Opcode.JO + { OpcodeByte = 112u + Opcode = Opcode.JO PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1570,7 +1719,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 113(0x71) - { Opcode = Opcode.JNO + { OpcodeByte = 113u + Opcode = Opcode.JNO PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1581,7 +1731,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 114(0x72) - { Opcode = Opcode.JB + { OpcodeByte = 114u + Opcode = Opcode.JB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1590,7 +1741,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 114u + Opcode = Opcode.JB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1599,7 +1751,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 114u + Opcode = Opcode.JB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1610,7 +1763,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 115(0x73) - { Opcode = Opcode.JAE + { OpcodeByte = 115u + Opcode = Opcode.JAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1619,7 +1773,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 115u + Opcode = Opcode.JAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1628,7 +1783,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 115u + Opcode = Opcode.JAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1639,7 +1795,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 116(0x74) - { Opcode = Opcode.JZ + { OpcodeByte = 116u + Opcode = Opcode.JZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1648,7 +1805,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 116u + Opcode = Opcode.JZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1659,7 +1817,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 117(0x75) - { Opcode = Opcode.JNZ + { OpcodeByte = 117u + Opcode = Opcode.JNZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1668,7 +1827,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNZ + { OpcodeByte = 117u + Opcode = Opcode.JNZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1679,7 +1839,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 118(0x76) - { Opcode = Opcode.JBE + { OpcodeByte = 118u + Opcode = Opcode.JBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1688,7 +1849,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JBE + { OpcodeByte = 118u + Opcode = Opcode.JBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1699,7 +1861,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 119(0x77) - { Opcode = Opcode.JNBE + { OpcodeByte = 119u + Opcode = Opcode.JNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1708,7 +1871,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNBE + { OpcodeByte = 119u + Opcode = Opcode.JNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1719,7 +1883,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 120(0x78) - { Opcode = Opcode.JS + { OpcodeByte = 120u + Opcode = Opcode.JS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1730,7 +1895,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 121(0x79) - { Opcode = Opcode.JNS + { OpcodeByte = 121u + Opcode = Opcode.JNS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1741,7 +1907,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 122(0x7A) - { Opcode = Opcode.JP + { OpcodeByte = 122u + Opcode = Opcode.JP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1750,7 +1917,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JP + { OpcodeByte = 122u + Opcode = Opcode.JP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1761,7 +1929,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 123(0x7B) - { Opcode = Opcode.JNP + { OpcodeByte = 123u + Opcode = Opcode.JNP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1770,7 +1939,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNP + { OpcodeByte = 123u + Opcode = Opcode.JNP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1781,7 +1951,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 124(0x7C) - { Opcode = Opcode.JL + { OpcodeByte = 124u + Opcode = Opcode.JL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1790,7 +1961,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JL + { OpcodeByte = 124u + Opcode = Opcode.JL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1801,7 +1973,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 125(0x7D) - { Opcode = Opcode.JGE + { OpcodeByte = 125u + Opcode = Opcode.JGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1810,7 +1983,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JGE + { OpcodeByte = 125u + Opcode = Opcode.JGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1821,7 +1995,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 126(0x7E) - { Opcode = Opcode.JNG + { OpcodeByte = 126u + Opcode = Opcode.JNG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1830,7 +2005,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNG + { OpcodeByte = 126u + Opcode = Opcode.JNG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1841,7 +2017,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) - { Opcode = Opcode.JNLE + { OpcodeByte = 127u + Opcode = Opcode.JNLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1850,7 +2027,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNLE + { OpcodeByte = 127u + Opcode = Opcode.JNLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1861,7 +2039,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 128(0x80) - { Opcode = Opcode.ADC + { OpcodeByte = 128u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1870,7 +2049,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 128u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1879,16 +2059,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 128u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "R/M81"; Imm Sz8 |] + Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 128u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1897,7 +2079,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 128u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1906,7 +2089,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 128u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1915,7 +2099,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 128u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1924,7 +2109,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 128u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1935,7 +2121,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 129(0x81) - { Opcode = Opcode.ADC + { OpcodeByte = 129u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1944,7 +2131,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 129u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1953,7 +2141,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 129u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1962,7 +2151,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ADD + { OpcodeByte = 129u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1971,7 +2161,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 129u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1980,7 +2171,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 129u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -1989,7 +2181,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.AND + { OpcodeByte = 129u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -1998,7 +2191,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 129u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2007,7 +2201,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 129u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2016,7 +2211,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMP + { OpcodeByte = 129u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2025,7 +2221,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 129u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2034,7 +2231,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 129u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2043,7 +2241,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.OR + { OpcodeByte = 129u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2052,7 +2251,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 129u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2061,7 +2261,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 129u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2070,7 +2271,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SBB + { OpcodeByte = 129u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2079,7 +2281,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 129u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2088,7 +2291,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 129u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2097,7 +2301,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SUB + { OpcodeByte = 129u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2106,7 +2311,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 129u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2115,7 +2321,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 129u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2124,7 +2331,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.XOR + { OpcodeByte = 129u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2133,7 +2341,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 129u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2142,7 +2351,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 129u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2155,7 +2365,8 @@ let (norOne: InstructionCore[][]) = [| // index 130(0x82) |] [| // index 131(0x83) - { Opcode = Opcode.ADC + { OpcodeByte = 131u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2164,7 +2375,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 131u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2173,7 +2385,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADC + { OpcodeByte = 131u + Opcode = Opcode.ADC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2182,7 +2395,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ADD + { OpcodeByte = 131u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2191,7 +2405,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 131u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2200,7 +2415,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ADD + { OpcodeByte = 131u + Opcode = Opcode.ADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2209,7 +2425,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.AND + { OpcodeByte = 131u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2218,7 +2435,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 131u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2227,7 +2445,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AND + { OpcodeByte = 131u + Opcode = Opcode.AND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2236,7 +2455,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMP + { OpcodeByte = 131u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2245,7 +2465,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 131u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2254,7 +2475,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMP + { OpcodeByte = 131u + Opcode = Opcode.CMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2263,7 +2485,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.OR + { OpcodeByte = 131u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2272,7 +2495,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 131u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2281,7 +2505,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OR + { OpcodeByte = 131u + Opcode = Opcode.OR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2290,7 +2515,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SBB + { OpcodeByte = 131u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2299,7 +2525,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 131u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2308,7 +2535,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SBB + { OpcodeByte = 131u + Opcode = Opcode.SBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2317,7 +2545,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SUB + { OpcodeByte = 131u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2326,7 +2555,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 131u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2335,7 +2565,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SUB + { OpcodeByte = 131u + Opcode = Opcode.SUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2344,7 +2575,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.XOR + { OpcodeByte = 131u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2353,7 +2585,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 131u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2362,7 +2595,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XOR + { OpcodeByte = 131u + Opcode = Opcode.XOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2373,7 +2607,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 132(0x84) - { Opcode = Opcode.TEST + { OpcodeByte = 132u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2384,7 +2619,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 133(0x85) - { Opcode = Opcode.TEST + { OpcodeByte = 133u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2393,7 +2629,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 133u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2402,7 +2639,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 133u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2413,7 +2651,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 134(0x86) - { Opcode = Opcode.XCHG + { OpcodeByte = 134u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2422,7 +2661,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 134u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2433,7 +2673,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 135(0x87) - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2442,7 +2683,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2451,7 +2693,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2460,7 +2703,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2469,7 +2713,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2478,7 +2723,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 135u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2489,7 +2735,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 136(0x88) - { Opcode = Opcode.MOV + { OpcodeByte = 136u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2500,7 +2747,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 137(0x89) - { Opcode = Opcode.MOV + { OpcodeByte = 137u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2509,7 +2757,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 137u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2518,7 +2767,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 137u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2529,7 +2779,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 138(0x8A) - { Opcode = Opcode.MOV + { OpcodeByte = 138u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2540,7 +2791,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 139(0x8B) - { Opcode = Opcode.MOV + { OpcodeByte = 139u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2549,7 +2801,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 139u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2558,7 +2811,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 139u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2569,7 +2823,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 140(0x8C) - { Opcode = Opcode.MOV + { OpcodeByte = 140u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2578,7 +2833,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 140u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2587,7 +2843,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 140u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2598,36 +2855,40 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 141(0x8D) - { Opcode = Opcode.LEA + { OpcodeByte = 141u + Opcode = Opcode.LEA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz16; Unknown "M" |] + Operands = [| Reg Sz16; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LEA + { OpcodeByte = 141u + Opcode = Opcode.LEA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Unknown "M" |] + Operands = [| Reg Sz32; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LEA + { OpcodeByte = 141u + Opcode = Opcode.LEA PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Unknown "M" |] + Operands = [| Reg Sz64; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 142(0x8E) - { Opcode = Opcode.MOV + { OpcodeByte = 142u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2636,7 +2897,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 142u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2647,7 +2909,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 143(0x8F) - { Opcode = Opcode.POP + { OpcodeByte = 143u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2656,7 +2919,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 143u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2665,7 +2929,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 143u + Opcode = Opcode.POP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2676,7 +2941,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 144(0x90) - { Opcode = Opcode.NOP + { OpcodeByte = 144u + Opcode = Opcode.NOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2685,7 +2951,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PAUSE + { OpcodeByte = 144u + Opcode = Opcode.PAUSE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2694,57 +2961,63 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Reg Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Unknown "AX" |] + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Reg Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Reg Sz64 |] + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Unknown "EAX" |] + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XCHG + { OpcodeByte = 144u + Opcode = Opcode.XCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Unknown "RAX" |] + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -2764,7 +3037,8 @@ let (norOne: InstructionCore[][]) = [| // index 151(0x97) |] [| // index 152(0x98) - { Opcode = Opcode.CBW + { OpcodeByte = 152u + Opcode = Opcode.CBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2773,7 +3047,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CWDE + { OpcodeByte = 152u + Opcode = Opcode.CWDE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2782,7 +3057,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CDQE + { OpcodeByte = 152u + Opcode = Opcode.CDQE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2793,7 +3069,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 153(0x99) - { Opcode = Opcode.CWD + { OpcodeByte = 153u + Opcode = Opcode.CWD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2802,7 +3079,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CDQ + { OpcodeByte = 153u + Opcode = Opcode.CDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2811,7 +3089,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CQO + { OpcodeByte = 153u + Opcode = Opcode.CQO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -2822,7 +3101,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 154(0x9A) - { Opcode = Opcode.CALL + { OpcodeByte = 154u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2831,7 +3111,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 154u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2842,7 +3123,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) - { Opcode = Opcode.FCLEX + { OpcodeByte = 155u + Opcode = Opcode.FCLEX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2851,7 +3133,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FINIT + { OpcodeByte = 155u + Opcode = Opcode.FINIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2860,7 +3143,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSAVE + { OpcodeByte = 155u + Opcode = Opcode.FSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2869,16 +3153,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTCW + { OpcodeByte = 155u + Opcode = Opcode.FSTCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M2BYTE" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTENV + { OpcodeByte = 155u + Opcode = Opcode.FSTENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2887,25 +3173,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTSW + { OpcodeByte = 155u + Opcode = Opcode.FSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M2BYTE" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTSW + { OpcodeByte = 155u + Opcode = Opcode.FSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX" |] + Operands = [| FixedReg(Register.AX, Explicit) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.WAIT + { OpcodeByte = 155u + Opcode = Opcode.WAIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2914,7 +3203,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FWAIT + { OpcodeByte = 155u + Opcode = Opcode.FWAIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2925,7 +3215,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) - { Opcode = Opcode.PUSHF + { OpcodeByte = 156u + Opcode = Opcode.PUSHF PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2934,7 +3225,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSHFD + { OpcodeByte = 156u + Opcode = Opcode.PUSHFD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2943,7 +3235,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSHFQ + { OpcodeByte = 156u + Opcode = Opcode.PUSHFQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2954,7 +3247,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 157(0x9D) - { Opcode = Opcode.POPF + { OpcodeByte = 157u + Opcode = Opcode.POPF PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2963,7 +3257,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POPFD + { OpcodeByte = 157u + Opcode = Opcode.POPFD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2972,7 +3267,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.POPFQ + { OpcodeByte = 157u + Opcode = Opcode.POPFQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2983,7 +3279,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 158(0x9E) - { Opcode = Opcode.SAHF + { OpcodeByte = 158u + Opcode = Opcode.SAHF PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2994,7 +3291,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) - { Opcode = Opcode.LAHF + { OpcodeByte = 159u + Opcode = Opcode.LAHF PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3005,105 +3303,116 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) - { Opcode = Opcode.MOV + { OpcodeByte = 160u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Unknown "MOFFS8" |] + Operands = [| FixedReg(Register.AL, Explicit); Unknown "MOFFS8" |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 160u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Unknown "MOFFS8" |] + Operands = [| FixedReg(Register.AL, Explicit); Unknown "MOFFS8" |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 161(0xA1) - { Opcode = Opcode.MOV + { OpcodeByte = 161u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Unknown "MOFFS16" |] + Operands = [| FixedReg(Register.AX, Explicit); Unknown "MOFFS16" |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 161u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Unknown "MOFFS32" |] + Operands = [| FixedReg(Register.EAX, Explicit); Unknown "MOFFS32" |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 161u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Unknown "MOFFS64" |] + Operands = [| FixedReg(Register.RAX, Explicit); Unknown "MOFFS64" |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 162(0xA2) - { Opcode = Opcode.MOV + { OpcodeByte = 162u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS8"; Unknown "AL" |] + Operands = [| Unknown "MOFFS8"; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 162u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS8"; Unknown "AL" |] + Operands = [| Unknown "MOFFS8"; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 163(0xA3) - { Opcode = Opcode.MOV + { OpcodeByte = 163u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS16"; Unknown "AX" |] + Operands = [| Unknown "MOFFS16"; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 163u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS32"; Unknown "EAX" |] + Operands = [| Unknown "MOFFS32"; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 163u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS64"; Unknown "RAX" |] + Operands = [| Unknown "MOFFS64"; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 164(0xA4) - { Opcode = Opcode.InvalOP + { OpcodeByte = 164u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3112,7 +3421,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSB + { OpcodeByte = 164u + Opcode = Opcode.MOVSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3123,7 +3433,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 165(0xA5) - { Opcode = Opcode.InvalOP + { OpcodeByte = 165u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3132,7 +3443,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 165u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3141,7 +3453,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 165u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3150,7 +3463,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOVSW + { OpcodeByte = 165u + Opcode = Opcode.MOVSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3159,7 +3473,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSD + { OpcodeByte = 165u + Opcode = Opcode.MOVSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3168,7 +3483,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSQ + { OpcodeByte = 165u + Opcode = Opcode.MOVSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3179,7 +3495,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 166(0xA6) - { Opcode = Opcode.InvalOP + { OpcodeByte = 166u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3188,7 +3505,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPSB + { OpcodeByte = 166u + Opcode = Opcode.CMPSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3199,7 +3517,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 167(0xA7) - { Opcode = Opcode.InvalOP + { OpcodeByte = 167u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3208,7 +3527,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 167u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3217,7 +3537,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 167u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3226,7 +3547,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMPSW + { OpcodeByte = 167u + Opcode = Opcode.CMPSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3235,7 +3557,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPSD + { OpcodeByte = 167u + Opcode = Opcode.CMPSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3244,7 +3567,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPSQ + { OpcodeByte = 167u + Opcode = Opcode.CMPSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3255,47 +3579,52 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 168(0xA8) - { Opcode = Opcode.TEST + { OpcodeByte = 168u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) - { Opcode = Opcode.TEST + { OpcodeByte = 169u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz16 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 169u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 169u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "RAX"; Imm Sz32 |] + Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 170(0xAA) - { Opcode = Opcode.InvalOP + { OpcodeByte = 170u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3304,7 +3633,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STOSB + { OpcodeByte = 170u + Opcode = Opcode.STOSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3315,7 +3645,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) - { Opcode = Opcode.InvalOP + { OpcodeByte = 171u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3324,7 +3655,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 171u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3333,7 +3665,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 171u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3342,7 +3675,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.STOSW + { OpcodeByte = 171u + Opcode = Opcode.STOSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3351,7 +3685,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STOSD + { OpcodeByte = 171u + Opcode = Opcode.STOSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3360,7 +3695,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STOSQ + { OpcodeByte = 171u + Opcode = Opcode.STOSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3371,7 +3707,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 172(0xAC) - { Opcode = Opcode.InvalOP + { OpcodeByte = 172u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3380,7 +3717,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LODSB + { OpcodeByte = 172u + Opcode = Opcode.LODSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3391,7 +3729,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 173(0xAD) - { Opcode = Opcode.InvalOP + { OpcodeByte = 173u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3400,7 +3739,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 173u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3409,7 +3749,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 173u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3418,7 +3759,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.LODSW + { OpcodeByte = 173u + Opcode = Opcode.LODSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3427,7 +3769,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LODSD + { OpcodeByte = 173u + Opcode = Opcode.LODSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3436,7 +3779,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LODSQ + { OpcodeByte = 173u + Opcode = Opcode.LODSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3447,7 +3791,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 174(0xAE) - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3456,7 +3801,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SCASB + { OpcodeByte = 174u + Opcode = Opcode.SCASB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3467,7 +3813,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) - { Opcode = Opcode.InvalOP + { OpcodeByte = 175u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3476,7 +3823,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 175u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3485,7 +3833,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 175u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3494,7 +3843,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SCASW + { OpcodeByte = 175u + Opcode = Opcode.SCASW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3503,7 +3853,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SCASD + { OpcodeByte = 175u + Opcode = Opcode.SCASD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3512,7 +3863,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SCASQ + { OpcodeByte = 175u + Opcode = Opcode.SCASQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3523,7 +3875,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 176(0xB0) - { Opcode = Opcode.MOV + { OpcodeByte = 176u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3548,7 +3901,8 @@ let (norOne: InstructionCore[][]) = [| // index 183(0xB7) |] [| // index 184(0xB8) - { Opcode = Opcode.MOV + { OpcodeByte = 184u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3557,7 +3911,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 184u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3566,12 +3921,13 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 184u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Unknown "IMM64" |] + Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -3591,7 +3947,8 @@ let (norOne: InstructionCore[][]) = [| // index 191(0xBF) |] [| // index 192(0xC0) - { Opcode = Opcode.RCL + { OpcodeByte = 192u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3600,7 +3957,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 192u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3609,7 +3967,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 192u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3618,7 +3977,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 192u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3627,7 +3987,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 192u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3636,7 +3997,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 192u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3645,7 +4007,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 192u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3654,7 +4017,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 192u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3665,7 +4029,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 193(0xC1) - { Opcode = Opcode.RCL + { OpcodeByte = 193u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3674,7 +4039,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 193u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3683,7 +4049,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 193u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3692,7 +4059,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.RCR + { OpcodeByte = 193u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3701,7 +4069,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 193u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3710,7 +4079,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 193u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3719,7 +4089,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROL + { OpcodeByte = 193u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3728,7 +4099,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 193u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3737,7 +4109,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 193u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3746,7 +4119,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROR + { OpcodeByte = 193u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3755,7 +4129,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 193u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3764,7 +4139,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 193u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3773,7 +4149,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 193u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3782,7 +4159,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 193u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3791,7 +4169,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 193u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3800,7 +4179,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SAR + { OpcodeByte = 193u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3809,7 +4189,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 193u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3818,7 +4199,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 193u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3827,7 +4209,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHL + { OpcodeByte = 193u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3836,7 +4219,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 193u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3845,7 +4229,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 193u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3854,7 +4239,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHR + { OpcodeByte = 193u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3863,7 +4249,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 193u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3872,7 +4259,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 193u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3883,7 +4271,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 194(0xC2) - { Opcode = Opcode.RET + { OpcodeByte = 194u + Opcode = Opcode.RET PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3894,7 +4283,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) - { Opcode = Opcode.RET + { OpcodeByte = 195u + Opcode = Opcode.RET PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3905,7 +4295,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 196(0xC4) - { Opcode = Opcode.LES + { OpcodeByte = 196u + Opcode = Opcode.LES PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3914,7 +4305,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LES + { OpcodeByte = 196u + Opcode = Opcode.LES PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3925,7 +4317,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) - { Opcode = Opcode.LDS + { OpcodeByte = 197u + Opcode = Opcode.LDS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3934,7 +4327,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LDS + { OpcodeByte = 197u + Opcode = Opcode.LDS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3945,7 +4339,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 198(0xC6) - { Opcode = Opcode.MOV + { OpcodeByte = 198u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3954,7 +4349,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XABORT + { OpcodeByte = 198u + Opcode = Opcode.XABORT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3965,7 +4361,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 199(0xC7) - { Opcode = Opcode.MOV + { OpcodeByte = 199u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3974,7 +4371,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 199u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -3983,7 +4381,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 199u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -3992,7 +4391,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.XBEGIN + { OpcodeByte = 199u + Opcode = Opcode.XBEGIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4001,7 +4401,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XBEGIN + { OpcodeByte = 199u + Opcode = Opcode.XBEGIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4012,25 +4413,28 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 200(0xC8) - { Opcode = Opcode.ENTER + { OpcodeByte = 200u + Opcode = Opcode.ENTER PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; Unknown "0" |] + Operands = [| Imm Sz16; FixedImm 0 |] OpEn = OpEn.II Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ENTER + { OpcodeByte = 200u + Opcode = Opcode.ENTER PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; Unknown "1" |] + Operands = [| Imm Sz16; FixedImm 1 |] OpEn = OpEn.II Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ENTER + { OpcodeByte = 200u + Opcode = Opcode.ENTER PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4041,7 +4445,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 201(0xC9) - { Opcode = Opcode.LEAVE + { OpcodeByte = 201u + Opcode = Opcode.LEAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4050,7 +4455,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LEAVE + { OpcodeByte = 201u + Opcode = Opcode.LEAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4059,7 +4465,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.LEAVE + { OpcodeByte = 201u + Opcode = Opcode.LEAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4070,7 +4477,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 202(0xCA) - { Opcode = Opcode.RET + { OpcodeByte = 202u + Opcode = Opcode.RET PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4081,7 +4489,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 203(0xCB) - { Opcode = Opcode.RET + { OpcodeByte = 203u + Opcode = Opcode.RET PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4092,7 +4501,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 204(0xCC) - { Opcode = Opcode.INT3 + { OpcodeByte = 204u + Opcode = Opcode.INT3 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4103,7 +4513,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) - { Opcode = Opcode.INT + { OpcodeByte = 205u + Opcode = Opcode.INT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4114,7 +4525,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 206(0xCE) - { Opcode = Opcode.INTO + { OpcodeByte = 206u + Opcode = Opcode.INTO PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4125,7 +4537,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 207(0xCF) - { Opcode = Opcode.IRET + { OpcodeByte = 207u + Opcode = Opcode.IRET PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4134,7 +4547,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IRETD + { OpcodeByte = 207u + Opcode = Opcode.IRETD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4143,7 +4557,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IRETQ + { OpcodeByte = 207u + Opcode = Opcode.IRETQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -4154,591 +4569,656 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 208(0xD0) - { Opcode = Opcode.RCL + { OpcodeByte = 208u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 208u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 208u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 208u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 208u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 208u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 208u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 208u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz8; Unknown "1" |] + Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 209(0xD1) - { Opcode = Opcode.RCL + { OpcodeByte = 209u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 209u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 209u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.RCR + { OpcodeByte = 209u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 209u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 209u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROL + { OpcodeByte = 209u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 209u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 209u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROR + { OpcodeByte = 209u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 209u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 209u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 209u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 209u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 209u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SAR + { OpcodeByte = 209u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 209u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 209u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHL + { OpcodeByte = 209u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 209u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 209u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHR + { OpcodeByte = 209u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz16; Unknown "1" |] + Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 209u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz32; Unknown "1" |] + Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 209u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz64; Unknown "1" |] + Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 210(0xD2) - { Opcode = Opcode.RCL + { OpcodeByte = 210u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 210u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 210u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 210u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 210u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 210u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 210u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz8; Unknown "CL" |] + Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) - { Opcode = Opcode.RCL + { OpcodeByte = 211u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 211u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCL + { OpcodeByte = 211u + Opcode = Opcode.RCL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.RCR + { OpcodeByte = 211u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 211u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RCR + { OpcodeByte = 211u + Opcode = Opcode.RCR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROL + { OpcodeByte = 211u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 211u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROL + { OpcodeByte = 211u + Opcode = Opcode.ROL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.ROR + { OpcodeByte = 211u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 211u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.ROR + { OpcodeByte = 211u + Opcode = Opcode.ROR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SAR + { OpcodeByte = 211u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 211u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SAR + { OpcodeByte = 211u + Opcode = Opcode.SAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHL + { OpcodeByte = 211u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 211u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHL + { OpcodeByte = 211u + Opcode = Opcode.SHL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.SHR + { OpcodeByte = 211u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz16; Unknown "CL" |] + Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 211u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz32; Unknown "CL" |] + Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHR + { OpcodeByte = 211u + Opcode = Opcode.SHR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| RM Sz64; Unknown "CL" |] + Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 212(0xD4) - { Opcode = Opcode.AAM + { OpcodeByte = 212u + Opcode = Opcode.AAM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4747,7 +5227,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AAM + { OpcodeByte = 212u + Opcode = Opcode.AAM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4758,7 +5239,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 213(0xD5) - { Opcode = Opcode.AAD + { OpcodeByte = 213u + Opcode = Opcode.AAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4767,7 +5249,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } - { Opcode = Opcode.AAD + { OpcodeByte = 213u + Opcode = Opcode.AAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4778,7 +5261,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 214(0xD6) - { Opcode = Opcode.InvalOP + { OpcodeByte = 214u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4789,7 +5273,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 215(0xD7) - { Opcode = Opcode.XLAT + { OpcodeByte = 215u + Opcode = Opcode.XLAT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4798,7 +5283,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XLATB + { OpcodeByte = 215u + Opcode = Opcode.XLATB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4807,7 +5293,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XLATB + { OpcodeByte = 215u + Opcode = Opcode.XLATB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -4818,43 +5305,48 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 216(0xD8) - { Opcode = Opcode.FADD + { OpcodeByte = 216u + Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FADD + { OpcodeByte = 216u + Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOM + { OpcodeByte = 216u + Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOM + { OpcodeByte = 216u + Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOM + { OpcodeByte = 216u + Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4863,25 +5355,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMP + { OpcodeByte = 216u + Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMP + { OpcodeByte = 216u + Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMP + { OpcodeByte = 216u + Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4890,99 +5385,110 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIV + { OpcodeByte = 216u + Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIV + { OpcodeByte = 216u + Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVR + { OpcodeByte = 216u + Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVR + { OpcodeByte = 216u + Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMUL + { OpcodeByte = 216u + Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMUL + { OpcodeByte = 216u + Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUB + { OpcodeByte = 216u + Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUB + { OpcodeByte = 216u + Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBR + { OpcodeByte = 216u + Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBR + { OpcodeByte = 216u + Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) - { Opcode = Opcode.F2XM1 + { OpcodeByte = 217u + Opcode = Opcode.F2XM1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4991,7 +5497,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FABS + { OpcodeByte = 217u + Opcode = Opcode.FABS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5000,7 +5507,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCHS + { OpcodeByte = 217u + Opcode = Opcode.FCHS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5009,7 +5517,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOS + { OpcodeByte = 217u + Opcode = Opcode.FCOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5018,7 +5527,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDECSTP + { OpcodeByte = 217u + Opcode = Opcode.FDECSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5027,7 +5537,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FINCSTP + { OpcodeByte = 217u + Opcode = Opcode.FINCSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5036,25 +5547,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLD + { OpcodeByte = 217u + Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLD + { OpcodeByte = 217u + Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLD1 + { OpcodeByte = 217u + Opcode = Opcode.FLD1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5063,7 +5577,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDL2T + { OpcodeByte = 217u + Opcode = Opcode.FLDL2T PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5072,7 +5587,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDL2E + { OpcodeByte = 217u + Opcode = Opcode.FLDL2E PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5081,7 +5597,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDPI + { OpcodeByte = 217u + Opcode = Opcode.FLDPI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5090,7 +5607,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDLG2 + { OpcodeByte = 217u + Opcode = Opcode.FLDLG2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5099,7 +5617,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDLN2 + { OpcodeByte = 217u + Opcode = Opcode.FLDLN2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5108,7 +5627,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDZ + { OpcodeByte = 217u + Opcode = Opcode.FLDZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5117,16 +5637,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDCW + { OpcodeByte = 217u + Opcode = Opcode.FLDCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M2BYTE" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLDENV + { OpcodeByte = 217u + Opcode = Opcode.FLDENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5135,7 +5657,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNOP + { OpcodeByte = 217u + Opcode = Opcode.FNOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5144,7 +5667,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FPREM + { OpcodeByte = 217u + Opcode = Opcode.FPREM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5153,7 +5677,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FPREM1 + { OpcodeByte = 217u + Opcode = Opcode.FPREM1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5162,7 +5687,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FRNDINT + { OpcodeByte = 217u + Opcode = Opcode.FRNDINT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5171,7 +5697,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSCALE + { OpcodeByte = 217u + Opcode = Opcode.FSCALE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5180,7 +5707,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSIN + { OpcodeByte = 217u + Opcode = Opcode.FSIN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5189,7 +5717,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSINCOS + { OpcodeByte = 217u + Opcode = Opcode.FSINCOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5198,7 +5727,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSQRT + { OpcodeByte = 217u + Opcode = Opcode.FSQRT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5207,34 +5737,38 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FST + { OpcodeByte = 217u + Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTP + { OpcodeByte = 217u + Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M32FP" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNSTCW + { OpcodeByte = 217u + Opcode = Opcode.FNSTCW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M2BYTE" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNSTENV + { OpcodeByte = 217u + Opcode = Opcode.FNSTENV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5243,7 +5777,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FTST + { OpcodeByte = 217u + Opcode = Opcode.FTST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5252,7 +5787,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXAM + { OpcodeByte = 217u + Opcode = Opcode.FXAM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5261,16 +5797,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXCH + { OpcodeByte = 217u + Opcode = Opcode.FXCH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXCH + { OpcodeByte = 217u + Opcode = Opcode.FXCH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5279,7 +5817,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXTRACT + { OpcodeByte = 217u + Opcode = Opcode.FXTRACT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5288,7 +5827,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FYL2X + { OpcodeByte = 217u + Opcode = Opcode.FYL2X PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5297,7 +5837,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FYL2XP1 + { OpcodeByte = 217u + Opcode = Opcode.FYL2XP1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5308,115 +5849,128 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 218(0xDA) - { Opcode = Opcode.FIADD + { OpcodeByte = 218u + Opcode = Opcode.FIADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVB + { OpcodeByte = 218u + Opcode = Opcode.FCMOVB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVE + { OpcodeByte = 218u + Opcode = Opcode.FCMOVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVBE + { OpcodeByte = 218u + Opcode = Opcode.FCMOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVU + { OpcodeByte = 218u + Opcode = Opcode.FCMOVU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIDIV + { OpcodeByte = 218u + Opcode = Opcode.FIDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIDIVR + { OpcodeByte = 218u + Opcode = Opcode.FIDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FICOM + { OpcodeByte = 218u + Opcode = Opcode.FICOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FICOMP + { OpcodeByte = 218u + Opcode = Opcode.FICOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIMUL + { OpcodeByte = 218u + Opcode = Opcode.FIMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISUB + { OpcodeByte = 218u + Opcode = Opcode.FISUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISUBR + { OpcodeByte = 218u + Opcode = Opcode.FISUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOMPP + { OpcodeByte = 218u + Opcode = Opcode.FUCOMPP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5427,7 +5981,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) - { Opcode = Opcode.FNCLEX + { OpcodeByte = 219u + Opcode = Opcode.FNCLEX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5436,70 +5991,78 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVNB + { OpcodeByte = 219u + Opcode = Opcode.FCMOVNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVNE + { OpcodeByte = 219u + Opcode = Opcode.FCMOVNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVNBE + { OpcodeByte = 219u + Opcode = Opcode.FCMOVNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCMOVNU + { OpcodeByte = 219u + Opcode = Opcode.FCMOVNU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(0)"; Unknown "ST(I)" |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMI + { OpcodeByte = 219u + Opcode = Opcode.FCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST"; Unknown "ST(I)" |] + Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOMI + { OpcodeByte = 219u + Opcode = Opcode.FUCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST"; Unknown "ST(I)" |] + Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FILD + { OpcodeByte = 219u + Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNINIT + { OpcodeByte = 219u + Opcode = Opcode.FNINIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5508,54 +6071,60 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIST + { OpcodeByte = 219u + Opcode = Opcode.FIST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTP + { OpcodeByte = 219u + Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTTP + { OpcodeByte = 219u + Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M32INT" |] + Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLD + { OpcodeByte = 219u + Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M80FP" |] + Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTP + { OpcodeByte = 219u + Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M80FP" |] + Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) - { Opcode = Opcode.FADD + { OpcodeByte = 220u + Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5564,16 +6133,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FADD + { OpcodeByte = 220u + Opcode = Opcode.FADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOM + { OpcodeByte = 220u + Opcode = Opcode.FCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5582,7 +6153,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMP + { OpcodeByte = 220u + Opcode = Opcode.FCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5591,7 +6163,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIV + { OpcodeByte = 220u + Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5600,16 +6173,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIV + { OpcodeByte = 220u + Opcode = Opcode.FDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVR + { OpcodeByte = 220u + Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5618,16 +6193,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVR + { OpcodeByte = 220u + Opcode = Opcode.FDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMUL + { OpcodeByte = 220u + Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5636,16 +6213,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMUL + { OpcodeByte = 220u + Opcode = Opcode.FMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUB + { OpcodeByte = 220u + Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5654,16 +6233,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUB + { OpcodeByte = 220u + Opcode = Opcode.FSUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBR + { OpcodeByte = 220u + Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5672,36 +6253,40 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBR + { OpcodeByte = 220u + Opcode = Opcode.FSUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) - { Opcode = Opcode.FFREE + { OpcodeByte = 221u + Opcode = Opcode.FFREE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTTP + { OpcodeByte = 221u + Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M64INT" |] + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FLD + { OpcodeByte = 221u + Opcode = Opcode.FLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5710,7 +6295,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FRSTOR + { OpcodeByte = 221u + Opcode = Opcode.FRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5719,7 +6305,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNSAVE + { OpcodeByte = 221u + Opcode = Opcode.FNSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5728,7 +6315,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FST + { OpcodeByte = 221u + Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5737,16 +6325,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FST + { OpcodeByte = 221u + Opcode = Opcode.FST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTP + { OpcodeByte = 221u + Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5755,34 +6345,38 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSTP + { OpcodeByte = 221u + Opcode = Opcode.FSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNSTSW + { OpcodeByte = 221u + Opcode = Opcode.FNSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M2BYTE" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOM + { OpcodeByte = 221u + Opcode = Opcode.FUCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOM + { OpcodeByte = 221u + Opcode = Opcode.FUCOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5791,16 +6385,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOMP + { OpcodeByte = 221u + Opcode = Opcode.FUCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)" |] + Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOMP + { OpcodeByte = 221u + Opcode = Opcode.FUCOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5811,16 +6407,18 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) - { Opcode = Opcode.FADDP + { OpcodeByte = 222u + Opcode = Opcode.FADDP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FADDP + { OpcodeByte = 222u + Opcode = Opcode.FADDP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5829,16 +6427,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIADD + { OpcodeByte = 222u + Opcode = Opcode.FIADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMPP + { OpcodeByte = 222u + Opcode = Opcode.FCOMPP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5847,16 +6447,18 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVP + { OpcodeByte = 222u + Opcode = Opcode.FDIVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVP + { OpcodeByte = 222u + Opcode = Opcode.FDIVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5865,25 +6467,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIDIV + { OpcodeByte = 222u + Opcode = Opcode.FIDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVRP + { OpcodeByte = 222u + Opcode = Opcode.FDIVRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FDIVRP + { OpcodeByte = 222u + Opcode = Opcode.FDIVRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5892,43 +6497,48 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIDIVR + { OpcodeByte = 222u + Opcode = Opcode.FIDIVR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FICOM + { OpcodeByte = 222u + Opcode = Opcode.FICOM PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FICOMP + { OpcodeByte = 222u + Opcode = Opcode.FICOMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMULP + { OpcodeByte = 222u + Opcode = Opcode.FMULP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FMULP + { OpcodeByte = 222u + Opcode = Opcode.FMULP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5937,25 +6547,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIMUL + { OpcodeByte = 222u + Opcode = Opcode.FIMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBP + { OpcodeByte = 222u + Opcode = Opcode.FSUBP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBP + { OpcodeByte = 222u + Opcode = Opcode.FSUBP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5964,25 +6577,28 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISUB + { OpcodeByte = 222u + Opcode = Opcode.FISUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBRP + { OpcodeByte = 222u + Opcode = Opcode.FSUBRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST(I)"; Unknown "ST(0)" |] + Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FSUBRP + { OpcodeByte = 222u + Opcode = Opcode.FSUBRP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5991,18 +6607,20 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISUBR + { OpcodeByte = 222u + Opcode = Opcode.FISUBR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) - { Opcode = Opcode.FBLD + { OpcodeByte = 223u + Opcode = Opcode.FBLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6011,7 +6629,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FBSTP + { OpcodeByte = 223u + Opcode = Opcode.FBSTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6020,90 +6639,100 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FCOMIP + { OpcodeByte = 223u + Opcode = Opcode.FCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST"; Unknown "ST(I)" |] + Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FUCOMIP + { OpcodeByte = 223u + Opcode = Opcode.FUCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ST"; Unknown "ST(I)" |] + Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FILD + { OpcodeByte = 223u + Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FILD + { OpcodeByte = 223u + Opcode = Opcode.FILD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M64INT" |] + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FIST + { OpcodeByte = 223u + Opcode = Opcode.FIST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTP + { OpcodeByte = 223u + Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTP + { OpcodeByte = 223u + Opcode = Opcode.FISTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M64INT" |] + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FISTTP + { OpcodeByte = 223u + Opcode = Opcode.FISTTP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M16INT" |] + Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FNSTSW + { OpcodeByte = 223u + Opcode = Opcode.FNSTSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX" |] + Operands = [| FixedReg(Register.AX, Explicit) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) - { Opcode = Opcode.LOOPNE + { OpcodeByte = 224u + Opcode = Opcode.LOOPNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6114,7 +6743,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 225(0xE1) - { Opcode = Opcode.LOOPE + { OpcodeByte = 225u + Opcode = Opcode.LOOPE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6125,7 +6755,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 226(0xE2) - { Opcode = Opcode.LOOP + { OpcodeByte = 226u + Opcode = Opcode.LOOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6136,7 +6767,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 227(0xE3) - { Opcode = Opcode.JCXZ + { OpcodeByte = 227u + Opcode = Opcode.JCXZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6145,7 +6777,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.JECXZ + { OpcodeByte = 227u + Opcode = Opcode.JECXZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6154,7 +6787,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JRCXZ + { OpcodeByte = 227u + Opcode = Opcode.JRCXZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6165,69 +6799,76 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 228(0xE4) - { Opcode = Opcode.IN + { OpcodeByte = 228u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Imm Sz8 |] + Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 229(0xE5) - { Opcode = Opcode.IN + { OpcodeByte = 229u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Imm Sz8 |] + Operands = [| FixedReg(Register.AX, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IN + { OpcodeByte = 229u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Imm Sz8 |] + Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 230(0xE6) - { Opcode = Opcode.OUT + { OpcodeByte = 230u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; Unknown "AL" |] + Operands = [| Imm Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 231(0xE7) - { Opcode = Opcode.OUT + { OpcodeByte = 231u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; Unknown "AX" |] + Operands = [| Imm Sz8; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUT + { OpcodeByte = 231u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; Unknown "EAX" |] + Operands = [| Imm Sz8; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) - { Opcode = Opcode.CALL + { OpcodeByte = 232u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6236,7 +6877,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 232u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6247,7 +6889,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 233(0xE9) - { Opcode = Opcode.JMP + { OpcodeByte = 233u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6256,7 +6899,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 233u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6267,7 +6911,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 234(0xEA) - { Opcode = Opcode.JMP + { OpcodeByte = 234u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6276,7 +6921,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.S Mode64 = Mode64.Inv Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 234u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6287,7 +6933,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 235(0xEB) - { Opcode = Opcode.JMP + { OpcodeByte = 235u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6298,69 +6945,76 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 236(0xEC) - { Opcode = Opcode.IN + { OpcodeByte = 236u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AL"; Unknown "DX" |] + Operands = [| FixedReg(Register.AL, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 237(0xED) - { Opcode = Opcode.IN + { OpcodeByte = 237u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "AX"; Unknown "DX" |] + Operands = [| FixedReg(Register.AX, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IN + { OpcodeByte = 237u + Opcode = Opcode.IN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "EAX"; Unknown "DX" |] + Operands = [| FixedReg(Register.EAX, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 238(0xEE) - { Opcode = Opcode.OUT + { OpcodeByte = 238u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Unknown "AL" |] + Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AL, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 239(0xEF) - { Opcode = Opcode.OUT + { OpcodeByte = 239u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Unknown "AX" |] + Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.OUT + { OpcodeByte = 239u + Opcode = Opcode.OUT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DX"; Unknown "EAX" |] + Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 240(0xF0) - { Opcode = Opcode.LOCK + { OpcodeByte = 240u + Opcode = Opcode.LOCK PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6371,7 +7025,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 241(0xF1) - { Opcode = Opcode.INT1 + { OpcodeByte = 241u + Opcode = Opcode.INT1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6382,7 +7037,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 242(0xF2) - { Opcode = Opcode.FPTAN + { OpcodeByte = 242u + Opcode = Opcode.FPTAN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6391,7 +7047,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XACQUIRE + { OpcodeByte = 242u + Opcode = Opcode.XACQUIRE PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6402,7 +7059,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 243(0xF3) - { Opcode = Opcode.FPATAN + { OpcodeByte = 243u + Opcode = Opcode.FPATAN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6411,7 +7069,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XRELEASE + { OpcodeByte = 243u + Opcode = Opcode.XRELEASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6422,7 +7081,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 244(0xF4) - { Opcode = Opcode.HLT + { OpcodeByte = 244u + Opcode = Opcode.HLT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6433,7 +7093,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 245(0xF5) - { Opcode = Opcode.CMC + { OpcodeByte = 245u + Opcode = Opcode.CMC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6444,7 +7105,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 246(0xF6) - { Opcode = Opcode.DIV + { OpcodeByte = 246u + Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6453,7 +7115,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IDIV + { OpcodeByte = 246u + Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6462,7 +7125,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 246u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6471,7 +7135,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MUL + { OpcodeByte = 246u + Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6480,7 +7145,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NEG + { OpcodeByte = 246u + Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6489,7 +7155,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NOT + { OpcodeByte = 246u + Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6498,7 +7165,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 246u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6509,7 +7177,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 247(0xF7) - { Opcode = Opcode.DIV + { OpcodeByte = 247u + Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6518,7 +7187,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.DIV + { OpcodeByte = 247u + Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6527,7 +7197,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.DIV + { OpcodeByte = 247u + Opcode = Opcode.DIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6536,7 +7207,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.IDIV + { OpcodeByte = 247u + Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6545,7 +7217,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IDIV + { OpcodeByte = 247u + Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6554,7 +7227,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IDIV + { OpcodeByte = 247u + Opcode = Opcode.IDIV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6563,7 +7237,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.IMUL + { OpcodeByte = 247u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6572,7 +7247,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 247u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6581,7 +7257,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 247u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6590,7 +7267,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MUL + { OpcodeByte = 247u + Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6599,7 +7277,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MUL + { OpcodeByte = 247u + Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6608,7 +7287,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MUL + { OpcodeByte = 247u + Opcode = Opcode.MUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6617,7 +7297,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.NEG + { OpcodeByte = 247u + Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6626,7 +7307,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NEG + { OpcodeByte = 247u + Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6635,7 +7317,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NEG + { OpcodeByte = 247u + Opcode = Opcode.NEG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6644,7 +7327,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.NOT + { OpcodeByte = 247u + Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6653,7 +7337,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NOT + { OpcodeByte = 247u + Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6662,7 +7347,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NOT + { OpcodeByte = 247u + Opcode = Opcode.NOT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6671,7 +7357,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.TEST + { OpcodeByte = 247u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6680,7 +7367,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 247u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6689,7 +7377,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.TEST + { OpcodeByte = 247u + Opcode = Opcode.TEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6700,7 +7389,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 248(0xF8) - { Opcode = Opcode.CLC + { OpcodeByte = 248u + Opcode = Opcode.CLC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6711,7 +7401,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) - { Opcode = Opcode.STC + { OpcodeByte = 249u + Opcode = Opcode.STC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6722,7 +7413,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 250(0xFA) - { Opcode = Opcode.CLI + { OpcodeByte = 250u + Opcode = Opcode.CLI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6733,7 +7425,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) - { Opcode = Opcode.STI + { OpcodeByte = 251u + Opcode = Opcode.STI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6744,7 +7437,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) - { Opcode = Opcode.CLD + { OpcodeByte = 252u + Opcode = Opcode.CLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6755,7 +7449,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 253(0xFD) - { Opcode = Opcode.STD + { OpcodeByte = 253u + Opcode = Opcode.STD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6766,7 +7461,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 254(0xFE) - { Opcode = Opcode.DEC + { OpcodeByte = 254u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6775,7 +7471,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INC + { OpcodeByte = 254u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6786,7 +7483,8 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 255(0xFF) - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6795,7 +7493,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6804,7 +7503,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6813,7 +7513,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6822,7 +7523,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6831,7 +7533,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CALL + { OpcodeByte = 255u + Opcode = Opcode.CALL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6840,7 +7543,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.DEC + { OpcodeByte = 255u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6849,7 +7553,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.DEC + { OpcodeByte = 255u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6858,7 +7563,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.DEC + { OpcodeByte = 255u + Opcode = Opcode.DEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6867,7 +7573,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.INC + { OpcodeByte = 255u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6876,7 +7583,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INC + { OpcodeByte = 255u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6885,7 +7593,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.INC + { OpcodeByte = 255u + Opcode = Opcode.INC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6894,7 +7603,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6903,7 +7613,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6912,7 +7623,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6921,7 +7633,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6930,7 +7643,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6939,7 +7653,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JMP + { OpcodeByte = 255u + Opcode = Opcode.JMP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6948,7 +7663,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.PUSH + { OpcodeByte = 255u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6957,7 +7673,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSH + { OpcodeByte = 255u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6966,7 +7683,8 @@ let (norOne: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.PUSH + { OpcodeByte = 255u + Opcode = Opcode.PUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6981,7 +7699,8 @@ let (norOne: InstructionCore[][]) = let (norTwo: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.LLDT + { OpcodeByte = 0u + Opcode = Opcode.LLDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6990,7 +7709,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LTR + { OpcodeByte = 0u + Opcode = Opcode.LTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6999,7 +7719,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SLDT + { OpcodeByte = 0u + Opcode = Opcode.SLDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7008,7 +7729,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STR + { OpcodeByte = 0u + Opcode = Opcode.STR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7017,7 +7739,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.VERR + { OpcodeByte = 0u + Opcode = Opcode.VERR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7026,7 +7749,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.VERW + { OpcodeByte = 0u + Opcode = Opcode.VERW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7037,7 +7761,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 1(0x01) - { Opcode = Opcode.CLAC + { OpcodeByte = 1u + Opcode = Opcode.CLAC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7046,7 +7771,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7055,16 +7781,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.INVLPG + { OpcodeByte = 1u + Opcode = Opcode.INVLPG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LGDT + { OpcodeByte = 1u + Opcode = Opcode.LGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7073,7 +7801,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.LIDT + { OpcodeByte = 1u + Opcode = Opcode.LIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7082,7 +7811,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.LGDT + { OpcodeByte = 1u + Opcode = Opcode.LGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7091,7 +7821,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.LIDT + { OpcodeByte = 1u + Opcode = Opcode.LIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7100,7 +7831,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.LMSW + { OpcodeByte = 1u + Opcode = Opcode.LMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7109,7 +7841,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MONITOR + { OpcodeByte = 1u + Opcode = Opcode.MONITOR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7118,7 +7851,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MWAIT + { OpcodeByte = 1u + Opcode = Opcode.MWAIT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7127,7 +7861,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7136,7 +7871,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7145,7 +7881,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDPKRU + { OpcodeByte = 1u + Opcode = Opcode.RDPKRU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7154,7 +7891,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDTSCP + { OpcodeByte = 1u + Opcode = Opcode.RDTSCP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7163,16 +7901,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.RSTORSSP + { OpcodeByte = 1u + Opcode = Opcode.RSTORSSP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp5 Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SAVEPREVSSP + { OpcodeByte = 1u + Opcode = Opcode.SAVEPREVSSP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7181,7 +7921,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7190,7 +7931,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SETSSBSY + { OpcodeByte = 1u + Opcode = Opcode.SETSSBSY PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7199,25 +7941,28 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SGDT + { OpcodeByte = 1u + Opcode = Opcode.SGDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SIDT + { OpcodeByte = 1u + Opcode = Opcode.SIDT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SMSW + { OpcodeByte = 1u + Opcode = Opcode.SMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7226,7 +7971,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SMSW + { OpcodeByte = 1u + Opcode = Opcode.SMSW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7235,7 +7981,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SMSW + { OpcodeByte = 1u + Opcode = Opcode.SMSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -7244,7 +7991,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STAC + { OpcodeByte = 1u + Opcode = Opcode.STAC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7253,7 +8001,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7262,7 +8011,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SWAPGS + { OpcodeByte = 1u + Opcode = Opcode.SWAPGS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7271,7 +8021,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7280,7 +8031,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7289,7 +8041,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7298,7 +8051,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7307,7 +8061,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRPKRU + { OpcodeByte = 1u + Opcode = Opcode.WRPKRU PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7316,7 +8071,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XEND + { OpcodeByte = 1u + Opcode = Opcode.XEND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7325,7 +8081,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XGETBV + { OpcodeByte = 1u + Opcode = Opcode.XGETBV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7334,7 +8091,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7343,7 +8101,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSETBV + { OpcodeByte = 1u + Opcode = Opcode.XSETBV PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7352,7 +8111,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 1u + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7361,7 +8121,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XTEST + { OpcodeByte = 1u + Opcode = Opcode.XTEST PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7372,7 +8133,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 2(0x02) - { Opcode = Opcode.LAR + { OpcodeByte = 2u + Opcode = Opcode.LAR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7381,7 +8143,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LAR + { OpcodeByte = 2u + Opcode = Opcode.LAR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7390,7 +8153,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LAR + { OpcodeByte = 2u + Opcode = Opcode.LAR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -7401,7 +8165,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 3(0x03) - { Opcode = Opcode.LSL + { OpcodeByte = 3u + Opcode = Opcode.LSL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7410,7 +8175,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LSL + { OpcodeByte = 3u + Opcode = Opcode.LSL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7419,7 +8185,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LSL + { OpcodeByte = 3u + Opcode = Opcode.LSL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -7432,7 +8199,8 @@ let (norTwo: InstructionCore[][]) = [| // index 4(0x04) |] [| // index 5(0x05) - { Opcode = Opcode.SYSCALL + { OpcodeByte = 5u + Opcode = Opcode.SYSCALL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7443,7 +8211,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid } |] [| // index 6(0x06) - { Opcode = Opcode.CLTS + { OpcodeByte = 6u + Opcode = Opcode.CLTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7454,7 +8223,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 7(0x07) - { Opcode = Opcode.SYSRET + { OpcodeByte = 7u + Opcode = Opcode.SYSRET PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7463,7 +8233,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid } - { Opcode = Opcode.SYSRET + { OpcodeByte = 7u + Opcode = Opcode.SYSRET PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -7474,7 +8245,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid } |] [| // index 8(0x08) - { Opcode = Opcode.INVD + { OpcodeByte = 8u + Opcode = Opcode.INVD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7485,7 +8257,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 9(0x09) - { Opcode = Opcode.WBINVD + { OpcodeByte = 9u + Opcode = Opcode.WBINVD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7494,7 +8267,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 9u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7507,7 +8281,8 @@ let (norTwo: InstructionCore[][]) = [| // index 10(0x0A) |] [| // index 11(0x0B) - { Opcode = Opcode.UD2 + { OpcodeByte = 11u + Opcode = Opcode.UD2 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7520,7 +8295,8 @@ let (norTwo: InstructionCore[][]) = [| // index 12(0x0C) |] [| // index 13(0x0D) - { Opcode = Opcode.PREFETCHW + { OpcodeByte = 13u + Opcode = Opcode.PREFETCHW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7529,7 +8305,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PREFETCHWT1 + { OpcodeByte = 13u + Opcode = Opcode.PREFETCHWT1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7544,7 +8321,8 @@ let (norTwo: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.MOVSD + { OpcodeByte = 16u + Opcode = Opcode.MOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7553,7 +8331,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSD + { OpcodeByte = 16u + Opcode = Opcode.MOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7562,16 +8341,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSS + { OpcodeByte = 16u + Opcode = Opcode.MOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSS + { OpcodeByte = 16u + Opcode = Opcode.MOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7580,7 +8361,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVUPD + { OpcodeByte = 16u + Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7589,7 +8371,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVUPS + { OpcodeByte = 16u + Opcode = Opcode.MOVUPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7600,25 +8383,28 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 17(0x11) - { Opcode = Opcode.MOVSD + { OpcodeByte = 17u + Opcode = Opcode.MOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSS + { OpcodeByte = 17u + Opcode = Opcode.MOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVUPD + { OpcodeByte = 17u + Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7627,7 +8413,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVUPS + { OpcodeByte = 17u + Opcode = Opcode.MOVUPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7638,16 +8425,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 18(0x12) - { Opcode = Opcode.MOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.MOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVHLPS + { OpcodeByte = 18u + Opcode = Opcode.MOVHLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7656,7 +8445,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVLPD + { OpcodeByte = 18u + Opcode = Opcode.MOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7665,7 +8455,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVLPS + { OpcodeByte = 18u + Opcode = Opcode.MOVLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7674,7 +8465,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.MOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7685,7 +8477,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 19(0x13) - { Opcode = Opcode.MOVLPD + { OpcodeByte = 19u + Opcode = Opcode.MOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7694,7 +8487,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVLPS + { OpcodeByte = 19u + Opcode = Opcode.MOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7705,7 +8499,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 20(0x14) - { Opcode = Opcode.UNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.UNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7714,7 +8509,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.UNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.UNPCKLPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7725,7 +8521,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.UNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.UNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7734,7 +8531,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.UNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.UNPCKHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7745,7 +8543,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.MOVHPD + { OpcodeByte = 22u + Opcode = Opcode.MOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7754,7 +8553,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVHPS + { OpcodeByte = 22u + Opcode = Opcode.MOVHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7763,7 +8563,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVLHPS + { OpcodeByte = 22u + Opcode = Opcode.MOVLHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7772,7 +8573,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.MOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7783,7 +8585,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.MOVHPD + { OpcodeByte = 23u + Opcode = Opcode.MOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7792,7 +8595,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVHPS + { OpcodeByte = 23u + Opcode = Opcode.MOVHPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7803,7 +8607,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 24(0x18) - { Opcode = Opcode.PREFETCHT0 + { OpcodeByte = 24u + Opcode = Opcode.PREFETCHT0 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7812,7 +8617,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PREFETCHT1 + { OpcodeByte = 24u + Opcode = Opcode.PREFETCHT1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7821,7 +8627,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PREFETCHT2 + { OpcodeByte = 24u + Opcode = Opcode.PREFETCHT2 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7830,7 +8637,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PREFETCHNTA + { OpcodeByte = 24u + Opcode = Opcode.PREFETCHNTA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7839,7 +8647,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 24u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7848,7 +8657,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 24u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7861,137 +8671,152 @@ let (norTwo: InstructionCore[][]) = [| // index 25(0x19) |] [| // index 26(0x1A) - { Opcode = Opcode.BNDCL + { OpcodeByte = 26u + Opcode = Opcode.BNDCL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz32 |] + Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDCL + { OpcodeByte = 26u + Opcode = Opcode.BNDCL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz64 |] + Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDCU + { OpcodeByte = 26u + Opcode = Opcode.BNDCU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz32 |] + Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDCU + { OpcodeByte = 26u + Opcode = Opcode.BNDCU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz64 |] + Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDLDX + { OpcodeByte = 26u + Opcode = Opcode.BNDLDX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; Unknown "MIB" |] + Operands = [| BndReg; Unknown "MIB" |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMOV + { OpcodeByte = 26u + Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND1"; Unknown "BND2/M64" |] + Operands = [| BndReg; BM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMOV + { OpcodeByte = 26u + Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND1"; Unknown "BND2/M128" |] + Operands = [| BndReg; BM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 27(0x1B) - { Opcode = Opcode.BNDCN + { OpcodeByte = 27u + Opcode = Opcode.BNDCN PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz32 |] + Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDCN + { OpcodeByte = 27u + Opcode = Opcode.BNDCN PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; RM Sz64 |] + Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMK + { OpcodeByte = 27u + Opcode = Opcode.BNDMK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; Mem Sz32 |] + Operands = [| BndReg; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMK + { OpcodeByte = 27u + Opcode = Opcode.BNDMK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND"; Mem Sz64 |] + Operands = [| BndReg; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMOV + { OpcodeByte = 27u + Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND1/M64"; Unknown "BND2" |] + Operands = [| BM Sz64; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDMOV + { OpcodeByte = 27u + Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "BND1/M128"; Unknown "BND2" |] + Operands = [| BM Sz128; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BNDSTX + { OpcodeByte = 27u + Opcode = Opcode.BNDSTX PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MIB"; Unknown "BND" |] + Operands = [| Unknown "MIB"; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 28(0x1C) - { Opcode = Opcode.InvalOP + { OpcodeByte = 28u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8004,7 +8829,8 @@ let (norTwo: InstructionCore[][]) = [| // index 29(0x1D) |] [| // index 30(0x1E) - { Opcode = Opcode.ENDBR32 + { OpcodeByte = 30u + Opcode = Opcode.ENDBR32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8013,7 +8839,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ENDBR64 + { OpcodeByte = 30u + Opcode = Opcode.ENDBR64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8022,27 +8849,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDSSPD + { OpcodeByte = 30u + Opcode = Opcode.RDSSPD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDSSPQ + { OpcodeByte = 30u + Opcode = Opcode.RDSSPQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp1 Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 31(0x1F) - { Opcode = Opcode.NOP + { OpcodeByte = 31u + Opcode = Opcode.NOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8051,7 +8881,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.NOP + { OpcodeByte = 31u + Opcode = Opcode.NOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8062,7 +8893,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 32(0x20) - { Opcode = Opcode.MOV + { OpcodeByte = 32u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8071,7 +8903,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 32u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8080,7 +8913,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOV + { OpcodeByte = 32u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None @@ -8091,7 +8925,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 33(0x21) - { Opcode = Opcode.MOV + { OpcodeByte = 33u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8100,7 +8935,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 33u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8111,7 +8947,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 34(0x22) - { Opcode = Opcode.MOV + { OpcodeByte = 34u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8120,7 +8957,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 34u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8129,7 +8967,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOV + { OpcodeByte = 34u + Opcode = Opcode.MOV PrefixType = Legacy NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None @@ -8140,7 +8979,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 35(0x23) - { Opcode = Opcode.MOV + { OpcodeByte = 35u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8149,7 +8989,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOV + { OpcodeByte = 35u + Opcode = Opcode.MOV PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8168,7 +9009,8 @@ let (norTwo: InstructionCore[][]) = [| // index 39(0x27) |] [| // index 40(0x28) - { Opcode = Opcode.MOVAPD + { OpcodeByte = 40u + Opcode = Opcode.MOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8177,7 +9019,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVAPS + { OpcodeByte = 40u + Opcode = Opcode.MOVAPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8188,7 +9031,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.MOVAPD + { OpcodeByte = 41u + Opcode = Opcode.MOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8197,7 +9041,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVAPS + { OpcodeByte = 41u + Opcode = Opcode.MOVAPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8208,7 +9053,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.CVTPI2PD + { OpcodeByte = 42u + Opcode = Opcode.CVTPI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8217,7 +9063,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CVTPI2PS + { OpcodeByte = 42u + Opcode = Opcode.CVTPI2PS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8226,7 +9073,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.CVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8235,7 +9083,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.CVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8244,7 +9093,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8253,7 +9103,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8264,7 +9115,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.MOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.MOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8273,7 +9125,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.MOVNTPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8284,159 +9137,176 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 44(0x2C) - { Opcode = Opcode.CVTTPD2PI + { OpcodeByte = 44u + Opcode = Opcode.CVTTPD2PI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; RM Sz128 |] + Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CVTTPS2PI + { OpcodeByte = 44u + Opcode = Opcode.CVTTPS2PI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Reg Sz128 |] + Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.CVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.CVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 45(0x2D) - { Opcode = Opcode.CVTPD2PI + { OpcodeByte = 45u + Opcode = Opcode.CVTPD2PI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; RM Sz128 |] + Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTPS2PI + { OpcodeByte = 45u + Opcode = Opcode.CVTPS2PI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Reg Sz128 |] + Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.CVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.CVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 46(0x2E) - { Opcode = Opcode.UCOMISD + { OpcodeByte = 46u + Opcode = Opcode.UCOMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.UCOMISS + { OpcodeByte = 46u + Opcode = Opcode.UCOMISS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 47(0x2F) - { Opcode = Opcode.COMISD + { OpcodeByte = 47u + Opcode = Opcode.COMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.COMISS + { OpcodeByte = 47u + Opcode = Opcode.COMISS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 48(0x30) - { Opcode = Opcode.WRMSR + { OpcodeByte = 48u + Opcode = Opcode.WRMSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8447,7 +9317,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 49(0x31) - { Opcode = Opcode.RDTSC + { OpcodeByte = 49u + Opcode = Opcode.RDTSC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8458,7 +9329,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 50(0x32) - { Opcode = Opcode.RDMSR + { OpcodeByte = 50u + Opcode = Opcode.RDMSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8469,7 +9341,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 51(0x33) - { Opcode = Opcode.RDPMC + { OpcodeByte = 51u + Opcode = Opcode.RDPMC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8480,7 +9353,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 52(0x34) - { Opcode = Opcode.SYSENTER + { OpcodeByte = 52u + Opcode = Opcode.SYSENTER PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8491,7 +9365,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 53(0x35) - { Opcode = Opcode.SYSEXIT + { OpcodeByte = 53u + Opcode = Opcode.SYSEXIT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8500,7 +9375,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SYSEXIT + { OpcodeByte = 53u + Opcode = Opcode.SYSEXIT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8513,7 +9389,8 @@ let (norTwo: InstructionCore[][]) = [| // index 54(0x36) |] [| // index 55(0x37) - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8522,7 +9399,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8531,7 +9409,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8540,7 +9419,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8549,7 +9429,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8558,7 +9439,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8567,7 +9449,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8576,7 +9459,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.None Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 55u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8603,7 +9487,8 @@ let (norTwo: InstructionCore[][]) = [| // index 63(0x3F) |] [| // index 64(0x40) - { Opcode = Opcode.CMOVO + { OpcodeByte = 64u + Opcode = Opcode.CMOVO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8612,7 +9497,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVO + { OpcodeByte = 64u + Opcode = Opcode.CMOVO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8621,7 +9507,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVO + { OpcodeByte = 64u + Opcode = Opcode.CMOVO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8632,7 +9519,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 65(0x41) - { Opcode = Opcode.CMOVNO + { OpcodeByte = 65u + Opcode = Opcode.CMOVNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8641,7 +9529,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNO + { OpcodeByte = 65u + Opcode = Opcode.CMOVNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8650,7 +9539,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNO + { OpcodeByte = 65u + Opcode = Opcode.CMOVNO PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8661,7 +9551,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 66(0x42) - { Opcode = Opcode.CMOVB + { OpcodeByte = 66u + Opcode = Opcode.CMOVB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8670,7 +9561,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVB + { OpcodeByte = 66u + Opcode = Opcode.CMOVB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8679,7 +9571,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVB + { OpcodeByte = 66u + Opcode = Opcode.CMOVB PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8688,7 +9581,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMOVC + { OpcodeByte = 66u + Opcode = Opcode.CMOVC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8697,7 +9591,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVC + { OpcodeByte = 66u + Opcode = Opcode.CMOVC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8706,7 +9601,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVC + { OpcodeByte = 66u + Opcode = Opcode.CMOVC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8715,7 +9611,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 66u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8724,7 +9621,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 66u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8733,7 +9631,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 66u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8744,7 +9643,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 67(0x43) - { Opcode = Opcode.CMOVAE + { OpcodeByte = 67u + Opcode = Opcode.CMOVAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8753,7 +9653,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVAE + { OpcodeByte = 67u + Opcode = Opcode.CMOVAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8762,7 +9663,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVAE + { OpcodeByte = 67u + Opcode = Opcode.CMOVAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8771,7 +9673,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 67u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8780,7 +9683,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 67u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8789,7 +9693,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 67u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8798,7 +9703,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMOVNC + { OpcodeByte = 67u + Opcode = Opcode.CMOVNC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8807,7 +9713,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNC + { OpcodeByte = 67u + Opcode = Opcode.CMOVNC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8816,7 +9723,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNC + { OpcodeByte = 67u + Opcode = Opcode.CMOVNC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8827,7 +9735,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 68(0x44) - { Opcode = Opcode.InvalOP + { OpcodeByte = 68u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8836,7 +9745,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 68u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8845,7 +9755,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 68u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8854,7 +9765,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMOVZ + { OpcodeByte = 68u + Opcode = Opcode.CMOVZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8863,7 +9775,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVZ + { OpcodeByte = 68u + Opcode = Opcode.CMOVZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8872,7 +9785,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVZ + { OpcodeByte = 68u + Opcode = Opcode.CMOVZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8883,7 +9797,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 69(0x45) - { Opcode = Opcode.InvalOP + { OpcodeByte = 69u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8892,7 +9807,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 69u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8901,7 +9817,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 69u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8910,7 +9827,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.CMOVNZ + { OpcodeByte = 69u + Opcode = Opcode.CMOVNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8919,7 +9837,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNZ + { OpcodeByte = 69u + Opcode = Opcode.CMOVNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8928,7 +9847,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNZ + { OpcodeByte = 69u + Opcode = Opcode.CMOVNZ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8939,7 +9859,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 70(0x46) - { Opcode = Opcode.CMOVBE + { OpcodeByte = 70u + Opcode = Opcode.CMOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8948,7 +9869,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVBE + { OpcodeByte = 70u + Opcode = Opcode.CMOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8957,7 +9879,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVBE + { OpcodeByte = 70u + Opcode = Opcode.CMOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8966,7 +9889,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 70u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8975,7 +9899,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 70u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8984,7 +9909,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 70u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -8995,7 +9921,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 71(0x47) - { Opcode = Opcode.CMOVA + { OpcodeByte = 71u + Opcode = Opcode.CMOVA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9004,7 +9931,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVA + { OpcodeByte = 71u + Opcode = Opcode.CMOVA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9013,7 +9941,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVA + { OpcodeByte = 71u + Opcode = Opcode.CMOVA PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9022,7 +9951,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 71u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9031,7 +9961,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 71u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9040,7 +9971,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 71u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9051,7 +9983,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 72(0x48) - { Opcode = Opcode.CMOVS + { OpcodeByte = 72u + Opcode = Opcode.CMOVS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9060,7 +9993,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVS + { OpcodeByte = 72u + Opcode = Opcode.CMOVS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9069,7 +10003,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVS + { OpcodeByte = 72u + Opcode = Opcode.CMOVS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9080,7 +10015,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 73(0x49) - { Opcode = Opcode.CMOVNS + { OpcodeByte = 73u + Opcode = Opcode.CMOVNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9089,7 +10025,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNS + { OpcodeByte = 73u + Opcode = Opcode.CMOVNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9098,7 +10035,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNS + { OpcodeByte = 73u + Opcode = Opcode.CMOVNS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9109,7 +10047,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 74(0x4A) - { Opcode = Opcode.CMOVP + { OpcodeByte = 74u + Opcode = Opcode.CMOVP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9118,7 +10057,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVP + { OpcodeByte = 74u + Opcode = Opcode.CMOVP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9127,7 +10067,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVP + { OpcodeByte = 74u + Opcode = Opcode.CMOVP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9136,7 +10077,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 74u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9145,7 +10087,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 74u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9154,7 +10097,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 74u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9165,7 +10109,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 75(0x4B) - { Opcode = Opcode.CMOVNP + { OpcodeByte = 75u + Opcode = Opcode.CMOVNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9174,7 +10119,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNP + { OpcodeByte = 75u + Opcode = Opcode.CMOVNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9183,7 +10129,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVNP + { OpcodeByte = 75u + Opcode = Opcode.CMOVNP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9192,7 +10139,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9201,7 +10149,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9210,7 +10159,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9221,7 +10171,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 76(0x4C) - { Opcode = Opcode.CMOVL + { OpcodeByte = 76u + Opcode = Opcode.CMOVL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9230,7 +10181,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVL + { OpcodeByte = 76u + Opcode = Opcode.CMOVL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9239,7 +10191,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVL + { OpcodeByte = 76u + Opcode = Opcode.CMOVL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9248,7 +10201,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 76u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9257,7 +10211,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 76u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9266,7 +10221,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 76u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9277,7 +10233,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 77(0x4D) - { Opcode = Opcode.CMOVGE + { OpcodeByte = 77u + Opcode = Opcode.CMOVGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9286,7 +10243,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVGE + { OpcodeByte = 77u + Opcode = Opcode.CMOVGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9295,7 +10253,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVGE + { OpcodeByte = 77u + Opcode = Opcode.CMOVGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9304,7 +10263,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 77u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9313,7 +10273,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 77u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9322,7 +10283,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 77u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9333,7 +10295,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 78(0x4E) - { Opcode = Opcode.CMOVLE + { OpcodeByte = 78u + Opcode = Opcode.CMOVLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9342,7 +10305,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVLE + { OpcodeByte = 78u + Opcode = Opcode.CMOVLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9351,7 +10315,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVLE + { OpcodeByte = 78u + Opcode = Opcode.CMOVLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9360,7 +10325,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 78u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9369,7 +10335,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 78u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9378,7 +10345,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 78u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9389,7 +10357,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 79(0x4F) - { Opcode = Opcode.CMOVG + { OpcodeByte = 79u + Opcode = Opcode.CMOVG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9398,7 +10367,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVG + { OpcodeByte = 79u + Opcode = Opcode.CMOVG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9407,7 +10377,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMOVG + { OpcodeByte = 79u + Opcode = Opcode.CMOVG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9416,7 +10387,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.VNE Compat = CompatLegMode.NA } - { Opcode = Opcode.InvalOP + { OpcodeByte = 79u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9425,7 +10397,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 79u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9434,7 +10407,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 79u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -9445,7 +10419,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 80(0x50) - { Opcode = Opcode.MOVMSKPD + { OpcodeByte = 80u + Opcode = Opcode.MOVMSKPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9454,7 +10429,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVMSKPS + { OpcodeByte = 80u + Opcode = Opcode.MOVMSKPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9465,7 +10441,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 81(0x51) - { Opcode = Opcode.SQRTPD + { OpcodeByte = 81u + Opcode = Opcode.SQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9474,7 +10451,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SQRTPS + { OpcodeByte = 81u + Opcode = Opcode.SQRTPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9483,27 +10461,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SQRTSD + { OpcodeByte = 81u + Opcode = Opcode.SQRTSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SQRTSS + { OpcodeByte = 81u + Opcode = Opcode.SQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 82(0x52) - { Opcode = Opcode.RSQRTPS + { OpcodeByte = 82u + Opcode = Opcode.RSQRTPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9512,18 +10493,20 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RSQRTSS + { OpcodeByte = 82u + Opcode = Opcode.RSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 83(0x53) - { Opcode = Opcode.RCPPS + { OpcodeByte = 83u + Opcode = Opcode.RCPPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9532,18 +10515,20 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RCPSS + { OpcodeByte = 83u + Opcode = Opcode.RCPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 84(0x54) - { Opcode = Opcode.ANDPD + { OpcodeByte = 84u + Opcode = Opcode.ANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9552,7 +10537,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ANDPS + { OpcodeByte = 84u + Opcode = Opcode.ANDPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9563,7 +10549,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 85(0x55) - { Opcode = Opcode.ANDNPD + { OpcodeByte = 85u + Opcode = Opcode.ANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9572,7 +10559,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ANDNPS + { OpcodeByte = 85u + Opcode = Opcode.ANDNPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9583,7 +10571,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 86(0x56) - { Opcode = Opcode.ORPD + { OpcodeByte = 86u + Opcode = Opcode.ORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9592,7 +10581,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ORPS + { OpcodeByte = 86u + Opcode = Opcode.ORPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9603,7 +10593,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 87(0x57) - { Opcode = Opcode.XORPD + { OpcodeByte = 87u + Opcode = Opcode.XORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9612,7 +10603,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XORPS + { OpcodeByte = 87u + Opcode = Opcode.XORPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9623,7 +10615,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 88(0x58) - { Opcode = Opcode.ADDPD + { OpcodeByte = 88u + Opcode = Opcode.ADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9632,7 +10625,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADDPS + { OpcodeByte = 88u + Opcode = Opcode.ADDPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9641,27 +10635,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADDSD + { OpcodeByte = 88u + Opcode = Opcode.ADDSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADDSS + { OpcodeByte = 88u + Opcode = Opcode.ADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 89(0x59) - { Opcode = Opcode.MULPD + { OpcodeByte = 89u + Opcode = Opcode.MULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9670,7 +10667,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MULPS + { OpcodeByte = 89u + Opcode = Opcode.MULPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9679,27 +10677,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MULSD + { OpcodeByte = 89u + Opcode = Opcode.MULSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MULSS + { OpcodeByte = 89u + Opcode = Opcode.MULSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 90(0x5A) - { Opcode = Opcode.CVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.CVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9708,36 +10709,40 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.CVTPS2PD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSD2SS + { OpcodeByte = 90u + Opcode = Opcode.CVTSD2SS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTSS2SD + { OpcodeByte = 90u + Opcode = Opcode.CVTSS2SD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 91(0x5B) - { Opcode = Opcode.CVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.CVTDQ2PS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9746,7 +10751,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.CVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9755,7 +10761,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.CVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9766,7 +10773,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 92(0x5C) - { Opcode = Opcode.SUBPD + { OpcodeByte = 92u + Opcode = Opcode.SUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9775,7 +10783,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SUBPS + { OpcodeByte = 92u + Opcode = Opcode.SUBPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9784,27 +10793,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SUBSD + { OpcodeByte = 92u + Opcode = Opcode.SUBSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SUBSS + { OpcodeByte = 92u + Opcode = Opcode.SUBSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 93(0x5D) - { Opcode = Opcode.MINPD + { OpcodeByte = 93u + Opcode = Opcode.MINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9813,7 +10825,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MINPS + { OpcodeByte = 93u + Opcode = Opcode.MINPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9822,27 +10835,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MINSD + { OpcodeByte = 93u + Opcode = Opcode.MINSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MINSS + { OpcodeByte = 93u + Opcode = Opcode.MINSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 94(0x5E) - { Opcode = Opcode.DIVPD + { OpcodeByte = 94u + Opcode = Opcode.DIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9851,7 +10867,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.DIVPS + { OpcodeByte = 94u + Opcode = Opcode.DIVPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9860,27 +10877,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.DIVSD + { OpcodeByte = 94u + Opcode = Opcode.DIVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.DIVSS + { OpcodeByte = 94u + Opcode = Opcode.DIVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 95(0x5F) - { Opcode = Opcode.MAXPD + { OpcodeByte = 95u + Opcode = Opcode.MAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9889,7 +10909,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MAXPS + { OpcodeByte = 95u + Opcode = Opcode.MAXPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9898,36 +10919,40 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MAXSD + { OpcodeByte = 95u + Opcode = Opcode.MAXSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MAXSS + { OpcodeByte = 95u + Opcode = Opcode.MAXSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 96(0x60) - { Opcode = Opcode.PUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.PUNPCKLBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M32" |] + Operands = [| MMXReg; Unknown "MM/M32" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.PUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9938,16 +10963,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 97(0x61) - { Opcode = Opcode.PUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.PUNPCKLWD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M32" |] + Operands = [| MMXReg; Unknown "MM/M32" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.PUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9958,16 +10985,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 98(0x62) - { Opcode = Opcode.PUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.PUNPCKLDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M32" |] + Operands = [| MMXReg; Unknown "MM/M32" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.PUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9978,7 +11007,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.PACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.PACKSSWB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9987,7 +11017,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.PACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9998,16 +11029,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 100(0x64) - { Opcode = Opcode.PCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.PCMPGTB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.PCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10018,16 +11051,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 101(0x65) - { Opcode = Opcode.PCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.PCMPGTW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.PCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10038,16 +11073,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 102(0x66) - { Opcode = Opcode.PCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.PCMPGTD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.PCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10058,16 +11095,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 103(0x67) - { Opcode = Opcode.PACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.PACKUSWB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.PACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10078,16 +11117,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 104(0x68) - { Opcode = Opcode.PUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.PUNPCKHBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.PUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10098,16 +11139,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 105(0x69) - { Opcode = Opcode.PUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.PUNPCKHWD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.PUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10118,16 +11161,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 106(0x6A) - { Opcode = Opcode.PUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.PUNPCKHDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.PUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10138,7 +11183,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 107(0x6B) - { Opcode = Opcode.PACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.PACKSSDW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10147,7 +11193,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.PACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10158,7 +11205,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 108(0x6C) - { Opcode = Opcode.PUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.PUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10169,7 +11217,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 109(0x6D) - { Opcode = Opcode.PUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.PUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10180,25 +11229,28 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 110(0x6E) - { Opcode = Opcode.MOVD + { OpcodeByte = 110u + Opcode = Opcode.MOVD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; RM Sz32 |] + Operands = [| MMXReg; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 110u + Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; RM Sz64 |] + Operands = [| MMXReg; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVD + { OpcodeByte = 110u + Opcode = Opcode.MOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10207,7 +11259,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 110u + Opcode = Opcode.MOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -10218,7 +11271,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 111(0x6F) - { Opcode = Opcode.MOVDQA + { OpcodeByte = 111u + Opcode = Opcode.MOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10227,7 +11281,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVDQU + { OpcodeByte = 111u + Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10236,18 +11291,20 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 111u + Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 112(0x70) - { Opcode = Opcode.PSHUFD + { OpcodeByte = 112u + Opcode = Opcode.PSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10256,7 +11313,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.PSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10265,7 +11323,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.PSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10274,7 +11333,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSHUFW + { OpcodeByte = 112u + Opcode = Opcode.PSHUFW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10285,7 +11345,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 113(0x71) - { Opcode = Opcode.PSLLW + { OpcodeByte = 113u + Opcode = Opcode.PSLLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10294,7 +11355,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLW + { OpcodeByte = 113u + Opcode = Opcode.PSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10303,16 +11365,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAW + { OpcodeByte = 113u + Opcode = Opcode.PSRAW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAW + { OpcodeByte = 113u + Opcode = Opcode.PSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10321,16 +11385,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLW + { OpcodeByte = 113u + Opcode = Opcode.PSRLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLW + { OpcodeByte = 113u + Opcode = Opcode.PSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10341,16 +11407,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 114(0x72) - { Opcode = Opcode.PSLLD + { OpcodeByte = 114u + Opcode = Opcode.PSLLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLD + { OpcodeByte = 114u + Opcode = Opcode.PSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10359,16 +11427,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAD + { OpcodeByte = 114u + Opcode = Opcode.PSRAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAD + { OpcodeByte = 114u + Opcode = Opcode.PSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10377,16 +11447,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLD + { OpcodeByte = 114u + Opcode = Opcode.PSRLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLD + { OpcodeByte = 114u + Opcode = Opcode.PSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10397,7 +11469,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 115(0x73) - { Opcode = Opcode.PSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.PSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10406,16 +11479,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLQ + { OpcodeByte = 115u + Opcode = Opcode.PSLLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLQ + { OpcodeByte = 115u + Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10424,7 +11499,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.PSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10433,16 +11509,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLQ + { OpcodeByte = 115u + Opcode = Opcode.PSRLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "MM"; Imm Sz8 |] + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLQ + { OpcodeByte = 115u + Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10453,16 +11531,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 116(0x74) - { Opcode = Opcode.PCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.PCMPEQB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.PCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10473,16 +11553,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 117(0x75) - { Opcode = Opcode.PCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.PCMPEQW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.PCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10493,16 +11575,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 118(0x76) - { Opcode = Opcode.PCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.PCMPEQD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.PCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10513,7 +11597,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 119(0x77) - { Opcode = Opcode.EMMS + { OpcodeByte = 119u + Opcode = Opcode.EMMS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10532,7 +11617,8 @@ let (norTwo: InstructionCore[][]) = [| // index 123(0x7B) |] [| // index 124(0x7C) - { Opcode = Opcode.HADDPD + { OpcodeByte = 124u + Opcode = Opcode.HADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10541,7 +11627,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.HADDPS + { OpcodeByte = 124u + Opcode = Opcode.HADDPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10552,7 +11639,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 125(0x7D) - { Opcode = Opcode.HSUBPD + { OpcodeByte = 125u + Opcode = Opcode.HSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10561,7 +11649,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.HSUBPS + { OpcodeByte = 125u + Opcode = Opcode.HSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10572,25 +11661,28 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 126(0x7E) - { Opcode = Opcode.MOVD + { OpcodeByte = 126u + Opcode = Opcode.MOVD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz32; Unknown "MM" |] + Operands = [| RM Sz32; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 126u + Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz64; Unknown "MM" |] + Operands = [| RM Sz64; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVD + { OpcodeByte = 126u + Opcode = Opcode.MOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10599,7 +11691,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 126u + Opcode = Opcode.MOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -10608,18 +11701,20 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 126u + Opcode = Opcode.MOVQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 127(0x7F) - { Opcode = Opcode.MOVDQA + { OpcodeByte = 127u + Opcode = Opcode.MOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10628,7 +11723,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVDQU + { OpcodeByte = 127u + Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10637,18 +11733,20 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ + { OpcodeByte = 127u + Opcode = Opcode.MOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM/M64"; Unknown "MM" |] + Operands = [| Unknown "MM/M64"; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 128(0x80) - { Opcode = Opcode.JO + { OpcodeByte = 128u + Opcode = Opcode.JO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10657,7 +11755,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JO + { OpcodeByte = 128u + Opcode = Opcode.JO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10668,7 +11767,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 129(0x81) - { Opcode = Opcode.JNO + { OpcodeByte = 129u + Opcode = Opcode.JNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10677,7 +11777,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNO + { OpcodeByte = 129u + Opcode = Opcode.JNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10688,7 +11789,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 130(0x82) - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10697,7 +11799,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10706,7 +11809,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10715,7 +11819,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10724,7 +11829,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10733,7 +11839,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JB + { OpcodeByte = 130u + Opcode = Opcode.JB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10744,7 +11851,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 131(0x83) - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10753,7 +11861,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10762,7 +11871,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10771,7 +11881,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10780,7 +11891,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10789,7 +11901,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JAE + { OpcodeByte = 131u + Opcode = Opcode.JAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10800,7 +11913,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 132(0x84) - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10809,7 +11923,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10818,7 +11933,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10827,7 +11943,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10836,7 +11953,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10845,7 +11963,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JZ + { OpcodeByte = 132u + Opcode = Opcode.JZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10856,7 +11975,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 133(0x85) - { Opcode = Opcode.JNZ + { OpcodeByte = 133u + Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10865,7 +11985,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNZ + { OpcodeByte = 133u + Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10874,7 +11995,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNZ + { OpcodeByte = 133u + Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10883,7 +12005,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNZ + { OpcodeByte = 133u + Opcode = Opcode.JNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10894,7 +12017,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 134(0x86) - { Opcode = Opcode.JBE + { OpcodeByte = 134u + Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10903,7 +12027,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JBE + { OpcodeByte = 134u + Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10912,7 +12037,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JBE + { OpcodeByte = 134u + Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10921,7 +12047,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JBE + { OpcodeByte = 134u + Opcode = Opcode.JBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10932,7 +12059,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 135(0x87) - { Opcode = Opcode.JNBE + { OpcodeByte = 135u + Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10941,7 +12069,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNBE + { OpcodeByte = 135u + Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10950,7 +12079,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNBE + { OpcodeByte = 135u + Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10959,7 +12089,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNBE + { OpcodeByte = 135u + Opcode = Opcode.JNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10970,7 +12101,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 136(0x88) - { Opcode = Opcode.JS + { OpcodeByte = 136u + Opcode = Opcode.JS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10979,7 +12111,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JS + { OpcodeByte = 136u + Opcode = Opcode.JS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10990,7 +12123,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 137(0x89) - { Opcode = Opcode.JNS + { OpcodeByte = 137u + Opcode = Opcode.JNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10999,7 +12133,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNS + { OpcodeByte = 137u + Opcode = Opcode.JNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11010,7 +12145,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 138(0x8A) - { Opcode = Opcode.JP + { OpcodeByte = 138u + Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11019,7 +12155,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JP + { OpcodeByte = 138u + Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11028,7 +12165,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JP + { OpcodeByte = 138u + Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11037,7 +12175,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JP + { OpcodeByte = 138u + Opcode = Opcode.JP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11048,7 +12187,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 139(0x8B) - { Opcode = Opcode.JNP + { OpcodeByte = 139u + Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11057,7 +12197,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNP + { OpcodeByte = 139u + Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11066,7 +12207,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNP + { OpcodeByte = 139u + Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11075,7 +12217,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNP + { OpcodeByte = 139u + Opcode = Opcode.JNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11086,7 +12229,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 140(0x8C) - { Opcode = Opcode.JL + { OpcodeByte = 140u + Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11095,7 +12239,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JL + { OpcodeByte = 140u + Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11104,7 +12249,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JL + { OpcodeByte = 140u + Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11113,7 +12259,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JL + { OpcodeByte = 140u + Opcode = Opcode.JL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11124,7 +12271,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 141(0x8D) - { Opcode = Opcode.JGE + { OpcodeByte = 141u + Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11133,7 +12281,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JGE + { OpcodeByte = 141u + Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11142,7 +12291,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JGE + { OpcodeByte = 141u + Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11151,7 +12301,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JGE + { OpcodeByte = 141u + Opcode = Opcode.JGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11162,7 +12313,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 142(0x8E) - { Opcode = Opcode.JNG + { OpcodeByte = 142u + Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11171,7 +12323,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNG + { OpcodeByte = 142u + Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11180,7 +12333,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNG + { OpcodeByte = 142u + Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11189,7 +12343,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNG + { OpcodeByte = 142u + Opcode = Opcode.JNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11200,7 +12355,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 143(0x8F) - { Opcode = Opcode.JNLE + { OpcodeByte = 143u + Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11209,7 +12365,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNLE + { OpcodeByte = 143u + Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11218,7 +12375,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNLE + { OpcodeByte = 143u + Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11227,7 +12385,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid } - { Opcode = Opcode.JNLE + { OpcodeByte = 143u + Opcode = Opcode.JNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11238,7 +12397,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 144(0x90) - { Opcode = Opcode.SETO + { OpcodeByte = 144u + Opcode = Opcode.SETO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11249,7 +12409,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 145(0x91) - { Opcode = Opcode.SETNO + { OpcodeByte = 145u + Opcode = Opcode.SETNO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11260,7 +12421,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 146(0x92) - { Opcode = Opcode.SETB + { OpcodeByte = 146u + Opcode = Opcode.SETB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11269,7 +12431,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 146u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11278,7 +12441,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 146u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11289,7 +12453,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 147(0x93) - { Opcode = Opcode.InvalOP + { OpcodeByte = 147u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11298,7 +12463,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SETNB + { OpcodeByte = 147u + Opcode = Opcode.SETNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11307,7 +12473,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 147u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11318,7 +12485,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 148(0x94) - { Opcode = Opcode.InvalOP + { OpcodeByte = 148u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11327,7 +12495,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SETZ + { OpcodeByte = 148u + Opcode = Opcode.SETZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11338,7 +12507,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 149(0x95) - { Opcode = Opcode.InvalOP + { OpcodeByte = 149u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11347,7 +12517,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SETNZ + { OpcodeByte = 149u + Opcode = Opcode.SETNZ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11358,7 +12529,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 150(0x96) - { Opcode = Opcode.SETBE + { OpcodeByte = 150u + Opcode = Opcode.SETBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11367,7 +12539,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 150u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11378,7 +12551,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 151(0x97) - { Opcode = Opcode.SETA + { OpcodeByte = 151u + Opcode = Opcode.SETA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11387,7 +12561,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 151u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11398,7 +12573,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 152(0x98) - { Opcode = Opcode.SETS + { OpcodeByte = 152u + Opcode = Opcode.SETS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11409,7 +12585,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 153(0x99) - { Opcode = Opcode.SETNS + { OpcodeByte = 153u + Opcode = Opcode.SETNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11420,7 +12597,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 154(0x9A) - { Opcode = Opcode.SETP + { OpcodeByte = 154u + Opcode = Opcode.SETP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11429,7 +12607,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 154u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11440,7 +12619,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) - { Opcode = Opcode.SETNP + { OpcodeByte = 155u + Opcode = Opcode.SETNP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11449,7 +12629,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 155u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11460,7 +12641,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) - { Opcode = Opcode.SETL + { OpcodeByte = 156u + Opcode = Opcode.SETL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11469,7 +12651,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 156u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11480,7 +12663,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 157(0x9D) - { Opcode = Opcode.InvalOP + { OpcodeByte = 157u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11489,7 +12673,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SETNL + { OpcodeByte = 157u + Opcode = Opcode.SETNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11500,7 +12685,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 158(0x9E) - { Opcode = Opcode.SETLE + { OpcodeByte = 158u + Opcode = Opcode.SETLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11509,7 +12695,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 158u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11520,7 +12707,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) - { Opcode = Opcode.SETG + { OpcodeByte = 159u + Opcode = Opcode.SETG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11529,7 +12717,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.InvalOP + { OpcodeByte = 159u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11540,7 +12729,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) - { Opcode = Opcode.PUSH + { OpcodeByte = 160u + Opcode = Opcode.PUSH PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11551,7 +12741,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 161(0xA1) - { Opcode = Opcode.POP + { OpcodeByte = 161u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11560,7 +12751,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 161u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11569,7 +12761,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 161u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11580,7 +12773,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 162(0xA2) - { Opcode = Opcode.CPUID + { OpcodeByte = 162u + Opcode = Opcode.CPUID PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11591,7 +12785,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 163(0xA3) - { Opcode = Opcode.BT + { OpcodeByte = 163u + Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11600,7 +12795,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BT + { OpcodeByte = 163u + Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11609,7 +12805,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BT + { OpcodeByte = 163u + Opcode = Opcode.BT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11620,7 +12817,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 164(0xA4) - { Opcode = Opcode.SHLD + { OpcodeByte = 164u + Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11629,7 +12827,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHLD + { OpcodeByte = 164u + Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11638,7 +12837,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHLD + { OpcodeByte = 164u + Opcode = Opcode.SHLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11649,30 +12849,33 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 165(0xA5) - { Opcode = Opcode.SHLD + { OpcodeByte = 165u + Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] + Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHLD + { OpcodeByte = 165u + Opcode = Opcode.SHLD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] + Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHLD + { OpcodeByte = 165u + Opcode = Opcode.SHLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] + Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -11682,7 +12885,8 @@ let (norTwo: InstructionCore[][]) = [| // index 167(0xA7) |] [| // index 168(0xA8) - { Opcode = Opcode.PUSH + { OpcodeByte = 168u + Opcode = Opcode.PUSH PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11693,7 +12897,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) - { Opcode = Opcode.POP + { OpcodeByte = 169u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11702,7 +12907,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 169u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11711,7 +12917,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } - { Opcode = Opcode.POP + { OpcodeByte = 169u + Opcode = Opcode.POP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11722,7 +12929,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 170(0xAA) - { Opcode = Opcode.RSM + { OpcodeByte = 170u + Opcode = Opcode.RSM PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11733,7 +12941,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) - { Opcode = Opcode.BTS + { OpcodeByte = 171u + Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11742,7 +12951,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTS + { OpcodeByte = 171u + Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11751,7 +12961,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTS + { OpcodeByte = 171u + Opcode = Opcode.BTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11762,7 +12973,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 172(0xAC) - { Opcode = Opcode.SHRD + { OpcodeByte = 172u + Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11771,7 +12983,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHRD + { OpcodeByte = 172u + Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11780,7 +12993,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHRD + { OpcodeByte = 172u + Opcode = Opcode.SHRD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11791,36 +13005,40 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 173(0xAD) - { Opcode = Opcode.SHRD + { OpcodeByte = 173u + Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz16; Reg Sz16; Unknown "CL" |] + Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHRD + { OpcodeByte = 173u + Opcode = Opcode.SHRD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz32; Reg Sz32; Unknown "CL" |] + Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.SHRD + { OpcodeByte = 173u + Opcode = Opcode.SHRD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| RM Sz64; Reg Sz64; Unknown "CL" |] + Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE } |] [| // index 174(0xAE) - { Opcode = Opcode.CLFLUSH + { OpcodeByte = 174u + Opcode = Opcode.CLFLUSH PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11829,7 +13047,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CLFLUSHOPT + { OpcodeByte = 174u + Opcode = Opcode.CLFLUSHOPT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11838,7 +13057,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CLRSSBSY + { OpcodeByte = 174u + Opcode = Opcode.CLRSSBSY PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11847,7 +13067,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CLWB + { OpcodeByte = 174u + Opcode = Opcode.CLWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11856,7 +13077,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.FXRSTOR + { OpcodeByte = 174u + Opcode = Opcode.FXRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11865,7 +13087,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXRSTOR64 + { OpcodeByte = 174u + Opcode = Opcode.FXRSTOR64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11874,7 +13097,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.FXSAVE + { OpcodeByte = 174u + Opcode = Opcode.FXSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11883,7 +13107,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.FXSAVE64 + { OpcodeByte = 174u + Opcode = Opcode.FXSAVE64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11892,7 +13117,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.INCSSPD + { OpcodeByte = 174u + Opcode = Opcode.INCSSPD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11901,7 +13127,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.INCSSPQ + { OpcodeByte = 174u + Opcode = Opcode.INCSSPQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11910,7 +13137,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.LDMXCSR + { OpcodeByte = 174u + Opcode = Opcode.LDMXCSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11919,7 +13147,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.LFENCE + { OpcodeByte = 174u + Opcode = Opcode.LFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11928,7 +13157,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MFENCE + { OpcodeByte = 174u + Opcode = Opcode.MFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11937,7 +13167,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11946,7 +13177,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11955,7 +13187,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDFSBASE + { OpcodeByte = 174u + Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11964,7 +13197,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDFSBASE + { OpcodeByte = 174u + Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11973,7 +13207,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDGSBASE + { OpcodeByte = 174u + Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11982,7 +13217,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDGSBASE + { OpcodeByte = 174u + Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -11991,7 +13227,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SFENCE + { OpcodeByte = 174u + Opcode = Opcode.SFENCE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12000,7 +13237,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.STMXCSR + { OpcodeByte = 174u + Opcode = Opcode.STMXCSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12009,16 +13247,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz32; Unknown ""; Unknown "" |] + Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12027,16 +13267,18 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz32; Unknown ""; Unknown "" |] + Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRFSBASE + { OpcodeByte = 174u + Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12045,7 +13287,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRFSBASE + { OpcodeByte = 174u + Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12054,7 +13297,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRGSBASE + { OpcodeByte = 174u + Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12063,7 +13307,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRGSBASE + { OpcodeByte = 174u + Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12072,7 +13317,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XRSTOR + { OpcodeByte = 174u + Opcode = Opcode.XRSTOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12081,7 +13327,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12090,7 +13337,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVE + { OpcodeByte = 174u + Opcode = Opcode.XSAVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12099,7 +13347,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12108,7 +13357,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVEOPT + { OpcodeByte = 174u + Opcode = Opcode.XSAVEOPT PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12117,7 +13367,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12128,7 +13379,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 175(0xAF) - { Opcode = Opcode.IMUL + { OpcodeByte = 175u + Opcode = Opcode.IMUL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12137,7 +13389,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 175u + Opcode = Opcode.IMUL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12146,7 +13399,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.IMUL + { OpcodeByte = 175u + Opcode = Opcode.IMUL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12157,7 +13411,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 176(0xB0) - { Opcode = Opcode.CMPXCHG + { OpcodeByte = 176u + Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12168,7 +13423,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 177(0xB1) - { Opcode = Opcode.CMPXCHG + { OpcodeByte = 177u + Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12177,7 +13433,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPXCHG + { OpcodeByte = 177u + Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12186,7 +13443,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPXCHG + { OpcodeByte = 177u + Opcode = Opcode.CMPXCHG PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12197,7 +13455,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 178(0xB2) - { Opcode = Opcode.LSS + { OpcodeByte = 178u + Opcode = Opcode.LSS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12206,7 +13465,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LSS + { OpcodeByte = 178u + Opcode = Opcode.LSS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12215,7 +13475,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LSS + { OpcodeByte = 178u + Opcode = Opcode.LSS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12226,7 +13487,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 179(0xB3) - { Opcode = Opcode.BTR + { OpcodeByte = 179u + Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12235,7 +13497,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTR + { OpcodeByte = 179u + Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12244,7 +13507,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTR + { OpcodeByte = 179u + Opcode = Opcode.BTR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12255,7 +13519,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 180(0xB4) - { Opcode = Opcode.LFS + { OpcodeByte = 180u + Opcode = Opcode.LFS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12264,7 +13529,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LFS + { OpcodeByte = 180u + Opcode = Opcode.LFS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12273,7 +13539,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LFS + { OpcodeByte = 180u + Opcode = Opcode.LFS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12284,7 +13551,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 181(0xB5) - { Opcode = Opcode.LGS + { OpcodeByte = 181u + Opcode = Opcode.LGS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12293,7 +13561,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LGS + { OpcodeByte = 181u + Opcode = Opcode.LGS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12302,7 +13571,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.LGS + { OpcodeByte = 181u + Opcode = Opcode.LGS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12313,7 +13583,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 182(0xB6) - { Opcode = Opcode.MOVZX + { OpcodeByte = 182u + Opcode = Opcode.MOVZX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12322,7 +13593,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVZX + { OpcodeByte = 182u + Opcode = Opcode.MOVZX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12331,7 +13603,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVZX + { OpcodeByte = 182u + Opcode = Opcode.MOVZX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12342,7 +13615,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 183(0xB7) - { Opcode = Opcode.MOVZX + { OpcodeByte = 183u + Opcode = Opcode.MOVZX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12351,7 +13625,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVZX + { OpcodeByte = 183u + Opcode = Opcode.MOVZX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12362,7 +13637,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 184(0xB8) - { Opcode = Opcode.POPCNT + { OpcodeByte = 184u + Opcode = Opcode.POPCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12371,7 +13647,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POPCNT + { OpcodeByte = 184u + Opcode = Opcode.POPCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12380,7 +13657,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.POPCNT + { OpcodeByte = 184u + Opcode = Opcode.POPCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12391,7 +13669,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 185(0xB9) - { Opcode = Opcode.UD1 + { OpcodeByte = 185u + Opcode = Opcode.UD1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12402,7 +13681,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 186(0xBA) - { Opcode = Opcode.BT + { OpcodeByte = 186u + Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12411,7 +13691,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BT + { OpcodeByte = 186u + Opcode = Opcode.BT PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12420,7 +13701,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BT + { OpcodeByte = 186u + Opcode = Opcode.BT PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12429,7 +13711,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.BTC + { OpcodeByte = 186u + Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12438,7 +13721,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTC + { OpcodeByte = 186u + Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12447,7 +13731,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTC + { OpcodeByte = 186u + Opcode = Opcode.BTC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12456,7 +13741,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.BTR + { OpcodeByte = 186u + Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12465,7 +13751,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTR + { OpcodeByte = 186u + Opcode = Opcode.BTR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12474,7 +13761,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTR + { OpcodeByte = 186u + Opcode = Opcode.BTR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12483,7 +13771,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.BTS + { OpcodeByte = 186u + Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12492,7 +13781,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTS + { OpcodeByte = 186u + Opcode = Opcode.BTS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12501,7 +13791,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTS + { OpcodeByte = 186u + Opcode = Opcode.BTS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12512,7 +13803,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 187(0xBB) - { Opcode = Opcode.BTC + { OpcodeByte = 187u + Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12521,7 +13813,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTC + { OpcodeByte = 187u + Opcode = Opcode.BTC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12530,7 +13823,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BTC + { OpcodeByte = 187u + Opcode = Opcode.BTC PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12541,7 +13835,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 188(0xBC) - { Opcode = Opcode.BSF + { OpcodeByte = 188u + Opcode = Opcode.BSF PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12550,7 +13845,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BSF + { OpcodeByte = 188u + Opcode = Opcode.BSF PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12559,7 +13855,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BSF + { OpcodeByte = 188u + Opcode = Opcode.BSF PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12568,7 +13865,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.TZCNT + { OpcodeByte = 188u + Opcode = Opcode.TZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12577,7 +13875,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.TZCNT + { OpcodeByte = 188u + Opcode = Opcode.TZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12586,7 +13885,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.TZCNT + { OpcodeByte = 188u + Opcode = Opcode.TZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12597,7 +13897,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 189(0xBD) - { Opcode = Opcode.BSR + { OpcodeByte = 189u + Opcode = Opcode.BSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12606,7 +13907,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BSR + { OpcodeByte = 189u + Opcode = Opcode.BSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12615,7 +13917,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BSR + { OpcodeByte = 189u + Opcode = Opcode.BSR PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12624,7 +13927,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.LZCNT + { OpcodeByte = 189u + Opcode = Opcode.LZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12633,7 +13937,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.LZCNT + { OpcodeByte = 189u + Opcode = Opcode.LZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12642,7 +13947,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.LZCNT + { OpcodeByte = 189u + Opcode = Opcode.LZCNT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12653,7 +13959,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 190(0xBE) - { Opcode = Opcode.MOVSX + { OpcodeByte = 190u + Opcode = Opcode.MOVSX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12662,7 +13969,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSX + { OpcodeByte = 190u + Opcode = Opcode.MOVSX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12671,7 +13979,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSX + { OpcodeByte = 190u + Opcode = Opcode.MOVSX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12682,7 +13991,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 191(0xBF) - { Opcode = Opcode.MOVSX + { OpcodeByte = 191u + Opcode = Opcode.MOVSX PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12691,7 +14001,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVSX + { OpcodeByte = 191u + Opcode = Opcode.MOVSX PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12702,7 +14013,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 192(0xC0) - { Opcode = Opcode.XADD + { OpcodeByte = 192u + Opcode = Opcode.XADD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12713,7 +14025,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 193(0xC1) - { Opcode = Opcode.XADD + { OpcodeByte = 193u + Opcode = Opcode.XADD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12722,7 +14035,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XADD + { OpcodeByte = 193u + Opcode = Opcode.XADD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12731,7 +14045,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.XADD + { OpcodeByte = 193u + Opcode = Opcode.XADD PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12742,7 +14057,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 194(0xC2) - { Opcode = Opcode.CMPPD + { OpcodeByte = 194u + Opcode = Opcode.CMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12751,7 +14067,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CMPPS + { OpcodeByte = 194u + Opcode = Opcode.CMPPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12760,27 +14077,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CMPSD + { OpcodeByte = 194u + Opcode = Opcode.CMPSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CMPSS + { OpcodeByte = 194u + Opcode = Opcode.CMPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 195(0xC3) - { Opcode = Opcode.MOVNTI + { OpcodeByte = 195u + Opcode = Opcode.MOVNTI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12789,7 +14109,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVNTI + { OpcodeByte = 195u + Opcode = Opcode.MOVNTI PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12800,16 +14121,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 196(0xC4) - { Opcode = Opcode.PINSRW + { OpcodeByte = 196u + Opcode = Opcode.PINSRW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; RMdiff(Sz32, Sz16); Imm Sz8 |] + Operands = [| MMXReg; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PINSRW + { OpcodeByte = 196u + Opcode = Opcode.PINSRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12820,16 +14143,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 197(0xC5) - { Opcode = Opcode.PEXTRW + { OpcodeByte = 197u + Opcode = Opcode.PEXTRW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Unknown "MM"; Imm Sz8 |] + Operands = [| Unknown "REG"; MMXReg; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PEXTRW + { OpcodeByte = 197u + Opcode = Opcode.PEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12840,7 +14165,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 198(0xC6) - { Opcode = Opcode.SHUFPD + { OpcodeByte = 198u + Opcode = Opcode.SHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12849,7 +14175,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SHUFPS + { OpcodeByte = 198u + Opcode = Opcode.SHUFPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12860,7 +14187,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 199(0xC7) - { Opcode = Opcode.CMPXCHG8B + { OpcodeByte = 199u + Opcode = Opcode.CMPXCHG8B PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12869,7 +14197,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CMPXCHG16B + { OpcodeByte = 199u + Opcode = Opcode.CMPXCHG16B PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12878,7 +14207,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.InvalOP + { OpcodeByte = 199u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12887,7 +14217,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 199u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12896,7 +14227,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDRAND + { OpcodeByte = 199u + Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12905,7 +14237,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDRAND + { OpcodeByte = 199u + Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12914,7 +14247,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDRAND + { OpcodeByte = 199u + Opcode = Opcode.RDRAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12923,7 +14257,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDSEED + { OpcodeByte = 199u + Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12932,7 +14267,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDSEED + { OpcodeByte = 199u + Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12941,7 +14277,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RDSEED + { OpcodeByte = 199u + Opcode = Opcode.RDSEED PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12950,7 +14287,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 199u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12959,7 +14297,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XRSTORS + { OpcodeByte = 199u + Opcode = Opcode.XRSTORS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12968,7 +14307,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XRSTORS64 + { OpcodeByte = 199u + Opcode = Opcode.XRSTORS64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12977,7 +14317,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVEC + { OpcodeByte = 199u + Opcode = Opcode.XSAVEC PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12986,7 +14327,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVEC64 + { OpcodeByte = 199u + Opcode = Opcode.XSAVEC64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12995,7 +14337,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVES + { OpcodeByte = 199u + Opcode = Opcode.XSAVES PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13004,7 +14347,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.XSAVES64 + { OpcodeByte = 199u + Opcode = Opcode.XSAVES64 PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -13015,7 +14359,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 200(0xC8) - { Opcode = Opcode.BSWAP + { OpcodeByte = 200u + Opcode = Opcode.BSWAP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13024,7 +14369,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.BSWAP + { OpcodeByte = 200u + Opcode = Opcode.BSWAP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -13049,7 +14395,8 @@ let (norTwo: InstructionCore[][]) = [| // index 207(0xCF) |] [| // index 208(0xD0) - { Opcode = Opcode.ADDSUBPD + { OpcodeByte = 208u + Opcode = Opcode.ADDSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13058,7 +14405,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADDSUBPS + { OpcodeByte = 208u + Opcode = Opcode.ADDSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13069,16 +14417,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 209(0xD1) - { Opcode = Opcode.PSRLW + { OpcodeByte = 209u + Opcode = Opcode.PSRLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLW + { OpcodeByte = 209u + Opcode = Opcode.PSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13089,16 +14439,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 210(0xD2) - { Opcode = Opcode.PSRLD + { OpcodeByte = 210u + Opcode = Opcode.PSRLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLD + { OpcodeByte = 210u + Opcode = Opcode.PSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13109,16 +14461,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 211(0xD3) - { Opcode = Opcode.PSRLQ + { OpcodeByte = 211u + Opcode = Opcode.PSRLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRLQ + { OpcodeByte = 211u + Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13129,16 +14483,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 212(0xD4) - { Opcode = Opcode.PADDQ + { OpcodeByte = 212u + Opcode = Opcode.PADDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDQ + { OpcodeByte = 212u + Opcode = Opcode.PADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13149,16 +14505,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 213(0xD5) - { Opcode = Opcode.PMULLW + { OpcodeByte = 213u + Opcode = Opcode.PMULLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMULLW + { OpcodeByte = 213u + Opcode = Opcode.PMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13169,45 +14527,50 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 214(0xD6) - { Opcode = Opcode.MOVDQ2Q + { OpcodeByte = 214u + Opcode = Opcode.MOVDQ2Q PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Reg Sz128 |] + Operands = [| MMXReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.MOVQ + { OpcodeByte = 214u + Opcode = Opcode.MOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVQ2DQ + { OpcodeByte = 214u + Opcode = Opcode.MOVQ2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "MM" |] + Operands = [| Reg Sz128; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 215(0xD7) - { Opcode = Opcode.PMOVMSKB + { OpcodeByte = 215u + Opcode = Opcode.PMOVMSKB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Unknown "MM" |] + Operands = [| Unknown "REG"; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMOVMSKB + { OpcodeByte = 215u + Opcode = Opcode.PMOVMSKB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13218,16 +14581,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 216(0xD8) - { Opcode = Opcode.PSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.PSUBUSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.PSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13238,16 +14603,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 217(0xD9) - { Opcode = Opcode.PSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.PSUBUSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.PSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13258,7 +14625,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 218(0xDA) - { Opcode = Opcode.PMINUB + { OpcodeByte = 218u + Opcode = Opcode.PMINUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13267,7 +14635,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMINUB + { OpcodeByte = 218u + Opcode = Opcode.PMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13278,16 +14647,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 219(0xDB) - { Opcode = Opcode.PAND + { OpcodeByte = 219u + Opcode = Opcode.PAND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PAND + { OpcodeByte = 219u + Opcode = Opcode.PAND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13298,16 +14669,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 220(0xDC) - { Opcode = Opcode.PADDUSB + { OpcodeByte = 220u + Opcode = Opcode.PADDUSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDUSB + { OpcodeByte = 220u + Opcode = Opcode.PADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13318,16 +14691,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.PADDUSW + { OpcodeByte = 221u + Opcode = Opcode.PADDUSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDUSW + { OpcodeByte = 221u + Opcode = Opcode.PADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13338,7 +14713,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.PMAXUB + { OpcodeByte = 222u + Opcode = Opcode.PMAXUB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13347,7 +14723,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMAXUB + { OpcodeByte = 222u + Opcode = Opcode.PMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13358,16 +14735,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.PANDN + { OpcodeByte = 223u + Opcode = Opcode.PANDN PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PANDN + { OpcodeByte = 223u + Opcode = Opcode.PANDN PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13378,7 +14757,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 224(0xE0) - { Opcode = Opcode.PAVGB + { OpcodeByte = 224u + Opcode = Opcode.PAVGB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13387,7 +14767,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PAVGB + { OpcodeByte = 224u + Opcode = Opcode.PAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13398,16 +14779,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 225(0xE1) - { Opcode = Opcode.PSRAW + { OpcodeByte = 225u + Opcode = Opcode.PSRAW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAW + { OpcodeByte = 225u + Opcode = Opcode.PSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13418,16 +14801,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 226(0xE2) - { Opcode = Opcode.PSRAD + { OpcodeByte = 226u + Opcode = Opcode.PSRAD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSRAD + { OpcodeByte = 226u + Opcode = Opcode.PSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13438,7 +14823,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 227(0xE3) - { Opcode = Opcode.PAVGW + { OpcodeByte = 227u + Opcode = Opcode.PAVGW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13447,7 +14833,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PAVGW + { OpcodeByte = 227u + Opcode = Opcode.PAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13458,7 +14845,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 228(0xE4) - { Opcode = Opcode.PMULHUW + { OpcodeByte = 228u + Opcode = Opcode.PMULHUW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13467,7 +14855,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMULHUW + { OpcodeByte = 228u + Opcode = Opcode.PMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13478,16 +14867,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 229(0xE5) - { Opcode = Opcode.PMULHW + { OpcodeByte = 229u + Opcode = Opcode.PMULHW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMULHW + { OpcodeByte = 229u + Opcode = Opcode.PMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13498,16 +14889,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 230(0xE6) - { Opcode = Opcode.CVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.CVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.CVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13516,7 +14909,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.CVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.CVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13527,7 +14921,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 231(0xE7) - { Opcode = Opcode.MOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.MOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13536,27 +14931,30 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVNTQ + { OpcodeByte = 231u + Opcode = Opcode.MOVNTQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Mem Sz64; Unknown "MM" |] + Operands = [| Mem Sz64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) - { Opcode = Opcode.PSUBSB + { OpcodeByte = 232u + Opcode = Opcode.PSUBSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBSB + { OpcodeByte = 232u + Opcode = Opcode.PSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13567,16 +14965,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 233(0xE9) - { Opcode = Opcode.PSUBSW + { OpcodeByte = 233u + Opcode = Opcode.PSUBSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBSW + { OpcodeByte = 233u + Opcode = Opcode.PSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13587,7 +14987,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 234(0xEA) - { Opcode = Opcode.PMINSW + { OpcodeByte = 234u + Opcode = Opcode.PMINSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13596,7 +14997,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMINSW + { OpcodeByte = 234u + Opcode = Opcode.PMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13607,16 +15009,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 235(0xEB) - { Opcode = Opcode.POR + { OpcodeByte = 235u + Opcode = Opcode.POR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.POR + { OpcodeByte = 235u + Opcode = Opcode.POR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13627,16 +15031,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 236(0xEC) - { Opcode = Opcode.PADDSB + { OpcodeByte = 236u + Opcode = Opcode.PADDSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDSB + { OpcodeByte = 236u + Opcode = Opcode.PADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13647,16 +15053,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 237(0xED) - { Opcode = Opcode.PADDSW + { OpcodeByte = 237u + Opcode = Opcode.PADDSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDSW + { OpcodeByte = 237u + Opcode = Opcode.PADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13667,7 +15075,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 238(0xEE) - { Opcode = Opcode.PMAXSW + { OpcodeByte = 238u + Opcode = Opcode.PMAXSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13676,7 +15085,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMAXSW + { OpcodeByte = 238u + Opcode = Opcode.PMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13687,16 +15097,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 239(0xEF) - { Opcode = Opcode.PXOR + { OpcodeByte = 239u + Opcode = Opcode.PXOR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PXOR + { OpcodeByte = 239u + Opcode = Opcode.PXOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13707,7 +15119,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 240(0xF0) - { Opcode = Opcode.LDDQU + { OpcodeByte = 240u + Opcode = Opcode.LDDQU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13718,16 +15131,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 241(0xF1) - { Opcode = Opcode.PSLLW + { OpcodeByte = 241u + Opcode = Opcode.PSLLW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLW + { OpcodeByte = 241u + Opcode = Opcode.PSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13738,16 +15153,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 242(0xF2) - { Opcode = Opcode.PSLLD + { OpcodeByte = 242u + Opcode = Opcode.PSLLD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLD + { OpcodeByte = 242u + Opcode = Opcode.PSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13758,16 +15175,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 243(0xF3) - { Opcode = Opcode.PSLLQ + { OpcodeByte = 243u + Opcode = Opcode.PSLLQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSLLQ + { OpcodeByte = 243u + Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13778,7 +15197,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 244(0xF4) - { Opcode = Opcode.PMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.PMULUDQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13787,7 +15207,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.PMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13798,16 +15219,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 245(0xF5) - { Opcode = Opcode.PMADDWD + { OpcodeByte = 245u + Opcode = Opcode.PMADDWD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMADDWD + { OpcodeByte = 245u + Opcode = Opcode.PMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13818,7 +15241,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 246(0xF6) - { Opcode = Opcode.PSADBW + { OpcodeByte = 246u + Opcode = Opcode.PSADBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13827,7 +15251,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSADBW + { OpcodeByte = 246u + Opcode = Opcode.PSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13838,7 +15263,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 247(0xF7) - { Opcode = Opcode.MASKMOVDQU + { OpcodeByte = 247u + Opcode = Opcode.MASKMOVDQU PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13847,7 +15273,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MASKMOVQ + { OpcodeByte = 247u + Opcode = Opcode.MASKMOVQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13858,16 +15285,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 248(0xF8) - { Opcode = Opcode.PSUBB + { OpcodeByte = 248u + Opcode = Opcode.PSUBB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBB + { OpcodeByte = 248u + Opcode = Opcode.PSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13878,16 +15307,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 249(0xF9) - { Opcode = Opcode.PSUBW + { OpcodeByte = 249u + Opcode = Opcode.PSUBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBW + { OpcodeByte = 249u + Opcode = Opcode.PSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13898,16 +15329,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 250(0xFA) - { Opcode = Opcode.PSUBD + { OpcodeByte = 250u + Opcode = Opcode.PSUBD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBD + { OpcodeByte = 250u + Opcode = Opcode.PSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13918,7 +15351,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 251(0xFB) - { Opcode = Opcode.PSUBQ + { OpcodeByte = 251u + Opcode = Opcode.PSUBQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13927,7 +15361,8 @@ let (norTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSUBQ + { OpcodeByte = 251u + Opcode = Opcode.PSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13938,16 +15373,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 252(0xFC) - { Opcode = Opcode.PADDB + { OpcodeByte = 252u + Opcode = Opcode.PADDB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDB + { OpcodeByte = 252u + Opcode = Opcode.PADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13958,16 +15395,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 253(0xFD) - { Opcode = Opcode.PADDW + { OpcodeByte = 253u + Opcode = Opcode.PADDW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDW + { OpcodeByte = 253u + Opcode = Opcode.PADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13978,16 +15417,18 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 254(0xFE) - { Opcode = Opcode.PADDD + { OpcodeByte = 254u + Opcode = Opcode.PADDD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Unknown "MM"; Unknown "MM/M64" |] + Operands = [| MMXReg; Unknown "MM/M64" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PADDD + { OpcodeByte = 254u + Opcode = Opcode.PADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -13998,7 +15439,8 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 255(0xFF) - { Opcode = Opcode.UD0 + { OpcodeByte = 255u + Opcode = Opcode.UD0 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14013,7 +15455,8 @@ let (norTwo: InstructionCore[][]) = let (norThree38: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.PSHUFB + { OpcodeByte = 0u + Opcode = Opcode.PSHUFB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14022,7 +15465,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSHUFB + { OpcodeByte = 0u + Opcode = Opcode.PSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14033,7 +15477,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 1(0x01) - { Opcode = Opcode.PHADDW + { OpcodeByte = 1u + Opcode = Opcode.PHADDW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14042,7 +15487,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHADDW + { OpcodeByte = 1u + Opcode = Opcode.PHADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14053,7 +15499,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 2(0x02) - { Opcode = Opcode.PHADDD + { OpcodeByte = 2u + Opcode = Opcode.PHADDD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14062,7 +15509,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHADDD + { OpcodeByte = 2u + Opcode = Opcode.PHADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14073,7 +15521,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 3(0x03) - { Opcode = Opcode.PHADDSW + { OpcodeByte = 3u + Opcode = Opcode.PHADDSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14082,7 +15531,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHADDSW + { OpcodeByte = 3u + Opcode = Opcode.PHADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14093,7 +15543,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 4(0x04) - { Opcode = Opcode.PMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.PMADDUBSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14102,7 +15553,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.PMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14113,7 +15565,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 5(0x05) - { Opcode = Opcode.PHSUBW + { OpcodeByte = 5u + Opcode = Opcode.PHSUBW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14122,7 +15575,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHSUBW + { OpcodeByte = 5u + Opcode = Opcode.PHSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14133,7 +15587,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 6(0x06) - { Opcode = Opcode.PHSUBD + { OpcodeByte = 6u + Opcode = Opcode.PHSUBD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14142,7 +15597,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHSUBD + { OpcodeByte = 6u + Opcode = Opcode.PHSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14153,7 +15609,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 7(0x07) - { Opcode = Opcode.PHSUBSW + { OpcodeByte = 7u + Opcode = Opcode.PHSUBSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14162,7 +15619,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PHSUBSW + { OpcodeByte = 7u + Opcode = Opcode.PHSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14173,7 +15631,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 8(0x08) - { Opcode = Opcode.PSIGNB + { OpcodeByte = 8u + Opcode = Opcode.PSIGNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14182,7 +15641,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSIGNB + { OpcodeByte = 8u + Opcode = Opcode.PSIGNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14193,7 +15653,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 9(0x09) - { Opcode = Opcode.PSIGNW + { OpcodeByte = 9u + Opcode = Opcode.PSIGNW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14202,7 +15663,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSIGNW + { OpcodeByte = 9u + Opcode = Opcode.PSIGNW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14213,7 +15675,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 10(0x0A) - { Opcode = Opcode.PSIGND + { OpcodeByte = 10u + Opcode = Opcode.PSIGND PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14222,7 +15685,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PSIGND + { OpcodeByte = 10u + Opcode = Opcode.PSIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14233,7 +15697,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 11(0x0B) - { Opcode = Opcode.PMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.PMULHRSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14242,7 +15707,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.PMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14261,12 +15727,13 @@ let (norThree38: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.PBLENDVB + { OpcodeByte = 16u + Opcode = Opcode.PBLENDVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14278,23 +15745,25 @@ let (norThree38: InstructionCore[][]) = [| // index 19(0x13) |] [| // index 20(0x14) - { Opcode = Opcode.BLENDVPS + { OpcodeByte = 20u + Opcode = Opcode.BLENDVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.BLENDVPD + { OpcodeByte = 21u + Opcode = Opcode.BLENDVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14302,7 +15771,8 @@ let (norThree38: InstructionCore[][]) = [| // index 22(0x16) |] [| // index 23(0x17) - { Opcode = Opcode.PTEST + { OpcodeByte = 23u + Opcode = Opcode.PTEST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14321,7 +15791,8 @@ let (norThree38: InstructionCore[][]) = [| // index 27(0x1B) |] [| // index 28(0x1C) - { Opcode = Opcode.PABSB + { OpcodeByte = 28u + Opcode = Opcode.PABSB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14330,7 +15801,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PABSB + { OpcodeByte = 28u + Opcode = Opcode.PABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14341,7 +15813,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 29(0x1D) - { Opcode = Opcode.PABSW + { OpcodeByte = 29u + Opcode = Opcode.PABSW PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14350,7 +15823,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PABSW + { OpcodeByte = 29u + Opcode = Opcode.PABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14361,7 +15835,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 30(0x1E) - { Opcode = Opcode.PABSD + { OpcodeByte = 30u + Opcode = Opcode.PABSD PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14370,7 +15845,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PABSD + { OpcodeByte = 30u + Opcode = Opcode.PABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14383,67 +15859,73 @@ let (norThree38: InstructionCore[][]) = [| // index 31(0x1F) |] [| // index 32(0x20) - { Opcode = Opcode.PMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.PMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.PMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.PMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.PMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.PMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 35(0x23) - { Opcode = Opcode.PMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.PMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 36(0x24) - { Opcode = Opcode.PMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.PMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 37(0x25) - { Opcode = Opcode.PMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.PMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14453,7 +15935,8 @@ let (norThree38: InstructionCore[][]) = [| // index 39(0x27) |] [| // index 40(0x28) - { Opcode = Opcode.PMULDQ + { OpcodeByte = 40u + Opcode = Opcode.PMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14464,7 +15947,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.PCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.PCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14475,7 +15959,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.MOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.MOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14486,7 +15971,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.PACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.PACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14505,67 +15991,73 @@ let (norThree38: InstructionCore[][]) = [| // index 47(0x2F) |] [| // index 48(0x30) - { Opcode = Opcode.PMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.PMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 49(0x31) - { Opcode = Opcode.PMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.PMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 50(0x32) - { Opcode = Opcode.PMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.PMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 51(0x33) - { Opcode = Opcode.PMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.PMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 52(0x34) - { Opcode = Opcode.PMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.PMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 53(0x35) - { Opcode = Opcode.PMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.PMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14573,7 +16065,8 @@ let (norThree38: InstructionCore[][]) = [| // index 54(0x36) |] [| // index 55(0x37) - { Opcode = Opcode.PCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.PCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14584,7 +16077,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 56(0x38) - { Opcode = Opcode.PMINSB + { OpcodeByte = 56u + Opcode = Opcode.PMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14595,7 +16089,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 57(0x39) - { Opcode = Opcode.PMINSD + { OpcodeByte = 57u + Opcode = Opcode.PMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14606,7 +16101,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 58(0x3A) - { Opcode = Opcode.PMINUW + { OpcodeByte = 58u + Opcode = Opcode.PMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14617,7 +16113,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 59(0x3B) - { Opcode = Opcode.PMINUD + { OpcodeByte = 59u + Opcode = Opcode.PMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14628,7 +16125,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 60(0x3C) - { Opcode = Opcode.PMAXSB + { OpcodeByte = 60u + Opcode = Opcode.PMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14639,7 +16137,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 61(0x3D) - { Opcode = Opcode.PMAXSD + { OpcodeByte = 61u + Opcode = Opcode.PMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14650,7 +16149,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 62(0x3E) - { Opcode = Opcode.PMAXUW + { OpcodeByte = 62u + Opcode = Opcode.PMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14661,7 +16161,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 63(0x3F) - { Opcode = Opcode.PMAXUD + { OpcodeByte = 63u + Opcode = Opcode.PMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14672,7 +16173,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 64(0x40) - { Opcode = Opcode.PMULLD + { OpcodeByte = 64u + Opcode = Opcode.PMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14683,7 +16185,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 65(0x41) - { Opcode = Opcode.PHMINPOSUW + { OpcodeByte = 65u + Opcode = Opcode.PHMINPOSUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14822,7 +16325,8 @@ let (norThree38: InstructionCore[][]) = [| // index 129(0x81) |] [| // index 130(0x82) - { Opcode = Opcode.INVPCID + { OpcodeByte = 130u + Opcode = Opcode.INVPCID PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14831,7 +16335,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.INVPCID + { OpcodeByte = 130u + Opcode = Opcode.INVPCID PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14980,7 +16485,8 @@ let (norThree38: InstructionCore[][]) = [| // index 199(0xC7) |] [| // index 200(0xC8) - { Opcode = Opcode.SHA1NEXTE + { OpcodeByte = 200u + Opcode = Opcode.SHA1NEXTE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14991,7 +16497,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 201(0xC9) - { Opcode = Opcode.SHA1MSG1 + { OpcodeByte = 201u + Opcode = Opcode.SHA1MSG1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15002,7 +16509,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 202(0xCA) - { Opcode = Opcode.SHA1MSG2 + { OpcodeByte = 202u + Opcode = Opcode.SHA1MSG2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15013,18 +16521,20 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 203(0xCB) - { Opcode = Opcode.SHA256RNDS2 + { OpcodeByte = 203u + Opcode = Opcode.SHA256RNDS2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 204(0xCC) - { Opcode = Opcode.SHA256MSG1 + { OpcodeByte = 204u + Opcode = Opcode.SHA256MSG1 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15035,7 +16545,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 205(0xCD) - { Opcode = Opcode.SHA256MSG2 + { OpcodeByte = 205u + Opcode = Opcode.SHA256MSG2 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15048,7 +16559,8 @@ let (norThree38: InstructionCore[][]) = [| // index 206(0xCE) |] [| // index 207(0xCF) - { Opcode = Opcode.GF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.GF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15075,39 +16587,43 @@ let (norThree38: InstructionCore[][]) = [| // index 215(0xD7) |] [| // index 216(0xD8) - { Opcode = Opcode.InvalOP + { OpcodeByte = 216u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M384"; Reg Sz128 |] + Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 216u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512"; Reg Sz128 |] + Operands = [| Unknown "M512"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 216u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M384"; Reg Sz128 |] + Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 216u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512"; Reg Sz128 |] + Operands = [| Unknown "M512"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15117,7 +16633,8 @@ let (norThree38: InstructionCore[][]) = [| // index 218(0xDA) |] [| // index 219(0xDB) - { Opcode = Opcode.AESIMC + { OpcodeByte = 219u + Opcode = Opcode.AESIMC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15128,7 +16645,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 220(0xDC) - { Opcode = Opcode.AESENC + { OpcodeByte = 220u + Opcode = Opcode.AESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15137,7 +16655,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 220u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15146,18 +16665,20 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 220u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown ""; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; FixedReg(Register.EAX, Implicit); Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.InvalOP + { OpcodeByte = 221u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15166,7 +16687,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.AESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.AESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15177,7 +16699,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.AESDEC + { OpcodeByte = 222u + Opcode = Opcode.AESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15186,7 +16709,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 222u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15197,7 +16721,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15206,7 +16731,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.AESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.AESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15249,7 +16775,8 @@ let (norThree38: InstructionCore[][]) = [| // index 239(0xEF) |] [| // index 240(0xF0) - { Opcode = Opcode.CRC32 + { OpcodeByte = 240u + Opcode = Opcode.CRC32 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15258,7 +16785,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CRC32 + { OpcodeByte = 240u + Opcode = Opcode.CRC32 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15267,7 +16795,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOVBE + { OpcodeByte = 240u + Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15276,7 +16805,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVBE + { OpcodeByte = 240u + Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15285,7 +16815,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVBE + { OpcodeByte = 240u + Opcode = Opcode.MOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15296,7 +16827,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 241(0xF1) - { Opcode = Opcode.CRC32 + { OpcodeByte = 241u + Opcode = Opcode.CRC32 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15305,7 +16837,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CRC32 + { OpcodeByte = 241u + Opcode = Opcode.CRC32 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15314,7 +16847,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } - { Opcode = Opcode.CRC32 + { OpcodeByte = 241u + Opcode = Opcode.CRC32 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15323,7 +16857,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } - { Opcode = Opcode.MOVBE + { OpcodeByte = 241u + Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15332,7 +16867,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVBE + { OpcodeByte = 241u + Opcode = Opcode.MOVBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15341,7 +16877,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MOVBE + { OpcodeByte = 241u + Opcode = Opcode.MOVBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15358,7 +16895,8 @@ let (norThree38: InstructionCore[][]) = [| // index 244(0xF4) |] [| // index 245(0xF5) - { Opcode = Opcode.WRUSSD + { OpcodeByte = 245u + Opcode = Opcode.WRUSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15367,7 +16905,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRUSSQ + { OpcodeByte = 245u + Opcode = Opcode.WRUSSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15378,7 +16917,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 246(0xF6) - { Opcode = Opcode.ADCX + { OpcodeByte = 246u + Opcode = Opcode.ADCX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15387,7 +16927,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADCX + { OpcodeByte = 246u + Opcode = Opcode.ADCX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15396,7 +16937,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADOX + { OpcodeByte = 246u + Opcode = Opcode.ADOX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15405,7 +16947,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ADOX + { OpcodeByte = 246u + Opcode = Opcode.ADOX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15414,7 +16957,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRSSD + { OpcodeByte = 246u + Opcode = Opcode.WRSSD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15423,7 +16967,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.WRSSQ + { OpcodeByte = 246u + Opcode = Opcode.WRSSQ PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15436,7 +16981,8 @@ let (norThree38: InstructionCore[][]) = [| // index 247(0xF7) |] [| // index 248(0xF8) - { Opcode = Opcode.InvalOP + { OpcodeByte = 248u + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15445,7 +16991,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 248u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15454,7 +17001,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 248u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15465,7 +17013,8 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 249(0xF9) - { Opcode = Opcode.InvalOP + { OpcodeByte = 249u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15474,7 +17023,8 @@ let (norThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 249u + Opcode = Opcode.InvalOP PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15485,23 +17035,25 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 250(0xFA) - { Opcode = Opcode.InvalOP + { OpcodeByte = 250u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Reg Sz32; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz32; Reg Sz32; Unknown ""; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 251(0xFB) - { Opcode = Opcode.InvalOP + { OpcodeByte = 251u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; Unknown "R32" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15535,7 +17087,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 7(0x07) |] [| // index 8(0x08) - { Opcode = Opcode.ROUNDPS + { OpcodeByte = 8u + Opcode = Opcode.ROUNDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15546,7 +17099,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 9(0x09) - { Opcode = Opcode.ROUNDPD + { OpcodeByte = 9u + Opcode = Opcode.ROUNDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15557,29 +17111,32 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 10(0x0A) - { Opcode = Opcode.ROUNDSS + { OpcodeByte = 10u + Opcode = Opcode.ROUNDSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 11(0x0B) - { Opcode = Opcode.ROUNDSD + { OpcodeByte = 11u + Opcode = Opcode.ROUNDSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 12(0x0C) - { Opcode = Opcode.BLENDPS + { OpcodeByte = 12u + Opcode = Opcode.BLENDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15590,7 +17147,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 13(0x0D) - { Opcode = Opcode.BLENDPD + { OpcodeByte = 13u + Opcode = Opcode.BLENDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15601,7 +17159,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 14(0x0E) - { Opcode = Opcode.PBLENDW + { OpcodeByte = 14u + Opcode = Opcode.PBLENDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15612,7 +17171,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 15(0x0F) - { Opcode = Opcode.PALIGNR + { OpcodeByte = 15u + Opcode = Opcode.PALIGNR PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15621,7 +17181,8 @@ let (norThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PALIGNR + { OpcodeByte = 15u + Opcode = Opcode.PALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15640,7 +17201,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 19(0x13) |] [| // index 20(0x14) - { Opcode = Opcode.PEXTRB + { OpcodeByte = 20u + Opcode = Opcode.PEXTRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15651,7 +17213,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.PEXTRW + { OpcodeByte = 21u + Opcode = Opcode.PEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15662,7 +17225,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.PEXTRD + { OpcodeByte = 22u + Opcode = Opcode.PEXTRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15671,7 +17235,8 @@ let (norThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PEXTRQ + { OpcodeByte = 22u + Opcode = Opcode.PEXTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15682,7 +17247,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.EXTRACTPS + { OpcodeByte = 23u + Opcode = Opcode.EXTRACTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15709,7 +17275,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 31(0x1F) |] [| // index 32(0x20) - { Opcode = Opcode.PINSRB + { OpcodeByte = 32u + Opcode = Opcode.PINSRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15720,18 +17287,20 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.INSERTPS + { OpcodeByte = 33u + Opcode = Opcode.INSERTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.PINSRD + { OpcodeByte = 34u + Opcode = Opcode.PINSRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15740,7 +17309,8 @@ let (norThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PINSRQ + { OpcodeByte = 34u + Opcode = Opcode.PINSRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15809,7 +17379,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 63(0x3F) |] [| // index 64(0x40) - { Opcode = Opcode.DPPS + { OpcodeByte = 64u + Opcode = Opcode.DPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15820,7 +17391,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 65(0x41) - { Opcode = Opcode.DPPD + { OpcodeByte = 65u + Opcode = Opcode.DPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15831,7 +17403,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 66(0x42) - { Opcode = Opcode.MPSADBW + { OpcodeByte = 66u + Opcode = Opcode.MPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15844,7 +17417,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 67(0x43) |] [| // index 68(0x44) - { Opcode = Opcode.PCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.PCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15909,7 +17483,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 95(0x5F) |] [| // index 96(0x60) - { Opcode = Opcode.PCMPESTRM + { OpcodeByte = 96u + Opcode = Opcode.PCMPESTRM PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15920,7 +17495,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 97(0x61) - { Opcode = Opcode.PCMPESTRI + { OpcodeByte = 97u + Opcode = Opcode.PCMPESTRI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15931,7 +17507,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 98(0x62) - { Opcode = Opcode.PCMPISTRM + { OpcodeByte = 98u + Opcode = Opcode.PCMPISTRM PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15942,7 +17519,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.PCMPISTRI + { OpcodeByte = 99u + Opcode = Opcode.PCMPISTRI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -16161,7 +17739,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 203(0xCB) |] [| // index 204(0xCC) - { Opcode = Opcode.SHA1RNDS4 + { OpcodeByte = 204u + Opcode = Opcode.SHA1RNDS4 PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -16174,7 +17753,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 205(0xCD) |] [| // index 206(0xCE) - { Opcode = Opcode.GF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.GF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -16185,7 +17765,8 @@ let (norThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 207(0xCF) - { Opcode = Opcode.GF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.GF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -16226,7 +17807,8 @@ let (norThree3A: InstructionCore[][]) = [| // index 222(0xDE) |] [| // index 223(0xDF) - { Opcode = Opcode.AESKEYGENASSIST + { OpcodeByte = 223u + Opcode = Opcode.AESKEYGENASSIST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -16269,12 +17851,13 @@ let (norThree3A: InstructionCore[][]) = [| // index 239(0xEF) |] [| // index 240(0xF0) - { Opcode = Opcode.InvalOP + { OpcodeByte = 240u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; Unknown "" |] + Operands = [| Imm Sz8; FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16346,7 +17929,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.VMOVSD + { OpcodeByte = 16u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16355,7 +17939,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSD + { OpcodeByte = 16u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16364,7 +17949,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 16u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16373,7 +17959,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 16u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16382,7 +17969,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16391,7 +17979,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16400,7 +17989,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16409,7 +17999,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16420,7 +18011,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 17(0x11) - { Opcode = Opcode.VMOVSD + { OpcodeByte = 17u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16429,7 +18021,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSD + { OpcodeByte = 17u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16438,7 +18031,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 17u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16447,7 +18041,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 17u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16456,7 +18051,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16465,7 +18061,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16474,7 +18071,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16483,7 +18081,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16494,16 +18093,18 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 18(0x12) - { Opcode = Opcode.VMOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16512,7 +18113,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHLPS + { OpcodeByte = 18u + Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16521,7 +18123,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPD + { OpcodeByte = 18u + Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16530,7 +18133,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPS + { OpcodeByte = 18u + Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16539,7 +18143,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16548,7 +18153,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16559,7 +18165,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 19(0x13) - { Opcode = Opcode.VMOVLPD + { OpcodeByte = 19u + Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16568,7 +18175,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPS + { OpcodeByte = 19u + Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16579,7 +18187,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 20(0x14) - { Opcode = Opcode.VUNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16588,7 +18197,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16597,7 +18207,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16606,7 +18217,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16617,7 +18229,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.VUNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16626,7 +18239,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16635,7 +18249,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16644,7 +18259,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16655,7 +18271,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.VMOVHPD + { OpcodeByte = 22u + Opcode = Opcode.VMOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16664,7 +18281,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHPS + { OpcodeByte = 22u + Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16673,7 +18291,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLHPS + { OpcodeByte = 22u + Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16682,7 +18301,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16691,7 +18311,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16702,7 +18323,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.VMOVHPD + { OpcodeByte = 23u + Opcode = Opcode.VMOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16711,7 +18333,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHPS + { OpcodeByte = 23u + Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16754,7 +18377,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 39(0x27) |] [| // index 40(0x28) - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16763,7 +18387,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16772,7 +18397,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16781,7 +18407,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16792,7 +18419,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16801,7 +18429,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16810,7 +18439,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16819,7 +18449,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16830,7 +18461,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.VCVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -16839,7 +18471,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -16848,7 +18481,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -16857,7 +18491,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -16868,7 +18503,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.VMOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16877,7 +18513,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16886,7 +18523,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -16895,7 +18533,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -16906,117 +18545,129 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 44(0x2C) - { Opcode = Opcode.VCVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 45(0x2D) - { Opcode = Opcode.VCVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 46(0x2E) - { Opcode = Opcode.VUCOMISD + { OpcodeByte = 46u + Opcode = Opcode.VUCOMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUCOMISS + { OpcodeByte = 46u + Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 47(0x2F) - { Opcode = Opcode.VCOMISD + { OpcodeByte = 47u + Opcode = Opcode.VCOMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMISS + { OpcodeByte = 47u + Opcode = Opcode.VCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17056,7 +18707,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 64(0x40) |] [| // index 65(0x41) - { Opcode = Opcode.KANDW + { OpcodeByte = 65u + Opcode = Opcode.KANDW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17065,7 +18717,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDB + { OpcodeByte = 65u + Opcode = Opcode.KANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17074,7 +18727,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDQ + { OpcodeByte = 65u + Opcode = Opcode.KANDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17083,7 +18737,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDD + { OpcodeByte = 65u + Opcode = Opcode.KANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17094,7 +18749,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 66(0x42) - { Opcode = Opcode.KANDNW + { OpcodeByte = 66u + Opcode = Opcode.KANDNW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17103,7 +18759,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDNB + { OpcodeByte = 66u + Opcode = Opcode.KANDNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17112,7 +18769,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDNQ + { OpcodeByte = 66u + Opcode = Opcode.KANDNQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17121,7 +18779,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KANDND + { OpcodeByte = 66u + Opcode = Opcode.KANDND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17134,7 +18793,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 67(0x43) |] [| // index 68(0x44) - { Opcode = Opcode.KNOTW + { OpcodeByte = 68u + Opcode = Opcode.KNOTW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -17143,7 +18803,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KNOTB + { OpcodeByte = 68u + Opcode = Opcode.KNOTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -17152,7 +18813,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KNOTQ + { OpcodeByte = 68u + Opcode = Opcode.KNOTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -17161,7 +18823,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KNOTD + { OpcodeByte = 68u + Opcode = Opcode.KNOTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -17172,7 +18835,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 69(0x45) - { Opcode = Opcode.KORW + { OpcodeByte = 69u + Opcode = Opcode.KORW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17181,7 +18845,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORB + { OpcodeByte = 69u + Opcode = Opcode.KORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17190,7 +18855,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORQ + { OpcodeByte = 69u + Opcode = Opcode.KORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17199,7 +18865,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORD + { OpcodeByte = 69u + Opcode = Opcode.KORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17210,7 +18877,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 70(0x46) - { Opcode = Opcode.KXNORW + { OpcodeByte = 70u + Opcode = Opcode.KXNORW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17219,7 +18887,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXNORB + { OpcodeByte = 70u + Opcode = Opcode.KXNORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17228,7 +18897,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXNORQ + { OpcodeByte = 70u + Opcode = Opcode.KXNORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17237,7 +18907,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXNORD + { OpcodeByte = 70u + Opcode = Opcode.KXNORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17248,7 +18919,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 71(0x47) - { Opcode = Opcode.KXORW + { OpcodeByte = 71u + Opcode = Opcode.KXORW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17257,7 +18929,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXORB + { OpcodeByte = 71u + Opcode = Opcode.KXORB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17266,7 +18939,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXORQ + { OpcodeByte = 71u + Opcode = Opcode.KXORQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17275,7 +18949,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KXORD + { OpcodeByte = 71u + Opcode = Opcode.KXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17290,7 +18965,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 73(0x49) |] [| // index 74(0x4A) - { Opcode = Opcode.KADDW + { OpcodeByte = 74u + Opcode = Opcode.KADDW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17299,7 +18975,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KADDB + { OpcodeByte = 74u + Opcode = Opcode.KADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17308,7 +18985,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KADDQ + { OpcodeByte = 74u + Opcode = Opcode.KADDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17317,7 +18995,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KADDD + { OpcodeByte = 74u + Opcode = Opcode.KADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17328,7 +19007,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 75(0x4B) - { Opcode = Opcode.KUNPCKBW + { OpcodeByte = 75u + Opcode = Opcode.KUNPCKBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17337,7 +19017,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KUNPCKWD + { OpcodeByte = 75u + Opcode = Opcode.KUNPCKWD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -17346,7 +19027,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KUNPCKDQ + { OpcodeByte = 75u + Opcode = Opcode.KUNPCKDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -17365,7 +19047,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 79(0x4F) |] [| // index 80(0x50) - { Opcode = Opcode.VMOVMSKPD + { OpcodeByte = 80u + Opcode = Opcode.VMOVMSKPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17374,7 +19057,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVMSKPD + { OpcodeByte = 80u + Opcode = Opcode.VMOVMSKPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17383,7 +19067,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVMSKPS + { OpcodeByte = 80u + Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17392,7 +19077,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVMSKPS + { OpcodeByte = 80u + Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17403,7 +19089,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 81(0x51) - { Opcode = Opcode.VSQRTPD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17412,7 +19099,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17421,7 +19109,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17430,7 +19119,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17439,27 +19129,30 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTSD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTSS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 82(0x52) - { Opcode = Opcode.VRSQRTPS + { OpcodeByte = 82u + Opcode = Opcode.VRSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17468,7 +19161,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRTPS + { OpcodeByte = 82u + Opcode = Opcode.VRSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17477,18 +19171,20 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRTSS + { OpcodeByte = 82u + Opcode = Opcode.VRSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 83(0x53) - { Opcode = Opcode.VRCPPS + { OpcodeByte = 83u + Opcode = Opcode.VRCPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17497,7 +19193,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCPPS + { OpcodeByte = 83u + Opcode = Opcode.VRCPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17506,18 +19203,20 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCPSS + { OpcodeByte = 83u + Opcode = Opcode.VRCPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 84(0x54) - { Opcode = Opcode.VANDPD + { OpcodeByte = 84u + Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17526,7 +19225,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPD + { OpcodeByte = 84u + Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17535,7 +19235,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPS + { OpcodeByte = 84u + Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17544,7 +19245,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPS + { OpcodeByte = 84u + Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17555,7 +19257,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 85(0x55) - { Opcode = Opcode.VANDNPD + { OpcodeByte = 85u + Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17564,7 +19267,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPD + { OpcodeByte = 85u + Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17573,7 +19277,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPS + { OpcodeByte = 85u + Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17582,7 +19287,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPS + { OpcodeByte = 85u + Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17593,7 +19299,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 86(0x56) - { Opcode = Opcode.VORPD + { OpcodeByte = 86u + Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17602,7 +19309,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPD + { OpcodeByte = 86u + Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17611,7 +19319,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPS + { OpcodeByte = 86u + Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -17620,7 +19329,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPS + { OpcodeByte = 86u + Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -17631,7 +19341,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 87(0x57) - { Opcode = Opcode.VXORPD + { OpcodeByte = 87u + Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17640,7 +19351,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPD + { OpcodeByte = 87u + Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17649,7 +19361,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPS + { OpcodeByte = 87u + Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17658,7 +19371,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPS + { OpcodeByte = 87u + Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17669,7 +19383,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 88(0x58) - { Opcode = Opcode.VADDPD + { OpcodeByte = 88u + Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17678,7 +19393,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPD + { OpcodeByte = 88u + Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17687,7 +19403,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPS + { OpcodeByte = 88u + Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17696,7 +19413,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPS + { OpcodeByte = 88u + Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17705,27 +19423,30 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSD + { OpcodeByte = 88u + Opcode = Opcode.VADDSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSS + { OpcodeByte = 88u + Opcode = Opcode.VADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 89(0x59) - { Opcode = Opcode.VMULPD + { OpcodeByte = 89u + Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17734,7 +19455,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPD + { OpcodeByte = 89u + Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17743,7 +19465,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPS + { OpcodeByte = 89u + Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17752,7 +19475,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPS + { OpcodeByte = 89u + Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17761,27 +19485,30 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULSD + { OpcodeByte = 89u + Opcode = Opcode.VMULSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULSS + { OpcodeByte = 89u + Opcode = Opcode.VMULSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 90(0x5A) - { Opcode = Opcode.VCVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17790,7 +19517,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17799,16 +19527,18 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17817,27 +19547,30 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2SS + { OpcodeByte = 90u + Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SD + { OpcodeByte = 90u + Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 91(0x5B) - { Opcode = Opcode.VCVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17846,7 +19579,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17855,7 +19589,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17864,7 +19599,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17873,7 +19609,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17882,7 +19619,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17893,7 +19631,194 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 92(0x5C) - { Opcode = Opcode.VSUBPD + { OpcodeByte = 92u + Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 92u + Opcode = Opcode.VSUBPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 92u + Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 92u + Opcode = Opcode.VSUBPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 92u + Opcode = Opcode.VSUBSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 92u + Opcode = Opcode.VSUBSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + |] + [| // index 93(0x5D) + { OpcodeByte = 93u + Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 93u + Opcode = Opcode.VMINPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 93u + Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 93u + Opcode = Opcode.VMINPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 93u + Opcode = Opcode.VMINSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 93u + Opcode = Opcode.VMINSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + |] + [| // index 94(0x5E) + { OpcodeByte = 94u + Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 94u + Opcode = Opcode.VDIVPD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 94u + Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 94u + Opcode = Opcode.VDIVPS + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V256 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 94u + Opcode = Opcode.VDIVSD + PrefixType = Mandatory F2 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 94u + Opcode = Opcode.VDIVSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.WIG + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + |] + [| // index 95(0x5F) + { OpcodeByte = 95u + Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17902,7 +19827,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPD + { OpcodeByte = 95u + Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17911,7 +19837,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPS + { OpcodeByte = 95u + Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -17920,7 +19847,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPS + { OpcodeByte = 95u + Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -17929,195 +19857,30 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBSD + { OpcodeByte = 95u + Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBSS - PrefixType = Mandatory F3 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - |] - [| // index 93(0x5D) - { Opcode = Opcode.VMINPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMINSD - PrefixType = Mandatory F2 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMINSS - PrefixType = Mandatory F3 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - |] - [| // index 94(0x5E) - { Opcode = Opcode.VDIVPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVSD - PrefixType = Mandatory F2 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVSS + { OpcodeByte = 95u + Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - |] - [| // index 95(0x5F) - { Opcode = Opcode.VMAXPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPS - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXSD - PrefixType = Mandatory F2 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXSS - PrefixType = Mandatory F3 - REXPrefixType = REXPrefixType.WIG - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 96(0x60) - { Opcode = Opcode.VPUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18126,7 +19889,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18137,7 +19901,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 97(0x61) - { Opcode = Opcode.VPUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18146,7 +19911,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18157,7 +19923,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 98(0x62) - { Opcode = Opcode.VPUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18166,7 +19933,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18177,7 +19945,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.VPACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18186,7 +19955,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18197,7 +19967,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 100(0x64) - { Opcode = Opcode.VPCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18206,7 +19977,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18217,7 +19989,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 101(0x65) - { Opcode = Opcode.VPCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18226,7 +19999,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18237,7 +20011,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 102(0x66) - { Opcode = Opcode.VPCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18246,7 +20021,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18257,7 +20033,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 103(0x67) - { Opcode = Opcode.VPACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18266,7 +20043,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18277,7 +20055,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 104(0x68) - { Opcode = Opcode.VPUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18286,7 +20065,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18297,7 +20077,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 105(0x69) - { Opcode = Opcode.VPUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18306,7 +20087,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18317,7 +20099,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 106(0x6A) - { Opcode = Opcode.VPUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18326,7 +20109,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18337,7 +20121,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 107(0x6B) - { Opcode = Opcode.VPACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18346,7 +20131,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18357,7 +20143,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 108(0x6C) - { Opcode = Opcode.VPUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18366,7 +20153,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18377,7 +20165,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 109(0x6D) - { Opcode = Opcode.VPUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18386,7 +20175,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18397,7 +20187,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 110(0x6E) - { Opcode = Opcode.VMOVD + { OpcodeByte = 110u + Opcode = Opcode.VMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -18406,7 +20197,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 110u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -18417,7 +20209,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 111(0x6F) - { Opcode = Opcode.VMOVDQA + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18426,7 +20219,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18435,7 +20229,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18444,7 +20239,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18455,7 +20251,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 112(0x70) - { Opcode = Opcode.VPSHUFD + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18464,7 +20261,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFD + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18473,7 +20271,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18482,7 +20281,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18491,7 +20291,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18500,7 +20301,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18511,7 +20313,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 113(0x71) - { Opcode = Opcode.VPSLLW + { OpcodeByte = 113u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18520,7 +20323,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 113u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18529,7 +20333,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 113u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18538,7 +20343,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 113u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18547,7 +20353,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 113u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18556,7 +20363,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 113u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18567,7 +20375,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 114(0x72) - { Opcode = Opcode.VPSLLD + { OpcodeByte = 114u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18576,7 +20385,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 114u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18585,7 +20395,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 114u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18594,7 +20405,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 114u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18603,7 +20415,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 114u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18612,7 +20425,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 114u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18623,7 +20437,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 115(0x73) - { Opcode = Opcode.VPSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18632,7 +20447,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18641,7 +20457,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18650,7 +20467,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18659,7 +20477,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18668,7 +20487,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18677,7 +20497,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18686,7 +20507,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18697,7 +20519,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 116(0x74) - { Opcode = Opcode.VPCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18706,7 +20529,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18717,7 +20541,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 117(0x75) - { Opcode = Opcode.VPCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18726,7 +20551,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18737,7 +20563,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 118(0x76) - { Opcode = Opcode.VPCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18746,7 +20573,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18757,7 +20585,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 119(0x77) - { Opcode = Opcode.InvalOP + { OpcodeByte = 119u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18766,7 +20595,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VZEROUPPER + { OpcodeByte = 119u + Opcode = Opcode.VZEROUPPER PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18785,7 +20615,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 123(0x7B) |] [| // index 124(0x7C) - { Opcode = Opcode.VHADDPD + { OpcodeByte = 124u + Opcode = Opcode.VHADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18794,7 +20625,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHADDPD + { OpcodeByte = 124u + Opcode = Opcode.VHADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18803,7 +20635,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHADDPS + { OpcodeByte = 124u + Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18812,7 +20645,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHADDPS + { OpcodeByte = 124u + Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18823,7 +20657,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 125(0x7D) - { Opcode = Opcode.VHSUBPD + { OpcodeByte = 125u + Opcode = Opcode.VHSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18832,7 +20667,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHSUBPD + { OpcodeByte = 125u + Opcode = Opcode.VHSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18841,7 +20677,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHSUBPS + { OpcodeByte = 125u + Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18850,7 +20687,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VHSUBPS + { OpcodeByte = 125u + Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18861,7 +20699,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 126(0x7E) - { Opcode = Opcode.VMOVD + { OpcodeByte = 126u + Opcode = Opcode.VMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -18870,7 +20709,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 126u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -18879,18 +20719,20 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 126u + Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 127(0x7F) - { Opcode = Opcode.VMOVDQA + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18899,7 +20741,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18908,7 +20751,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -18917,7 +20761,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -18960,7 +20805,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 143(0x8F) |] [| // index 144(0x90) - { Opcode = Opcode.KMOVW + { OpcodeByte = 144u + Opcode = Opcode.KMOVW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -18969,7 +20815,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVB + { OpcodeByte = 144u + Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -18978,7 +20825,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVQ + { OpcodeByte = 144u + Opcode = Opcode.KMOVQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -18987,7 +20835,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVD + { OpcodeByte = 144u + Opcode = Opcode.KMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -18998,7 +20847,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 145(0x91) - { Opcode = Opcode.KMOVW + { OpcodeByte = 145u + Opcode = Opcode.KMOVW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19007,7 +20857,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVB + { OpcodeByte = 145u + Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19016,7 +20867,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVQ + { OpcodeByte = 145u + Opcode = Opcode.KMOVQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19025,7 +20877,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVD + { OpcodeByte = 145u + Opcode = Opcode.KMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19036,7 +20889,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 146(0x92) - { Opcode = Opcode.KMOVW + { OpcodeByte = 146u + Opcode = Opcode.KMOVW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19045,7 +20899,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVB + { OpcodeByte = 146u + Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19054,7 +20909,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVQ + { OpcodeByte = 146u + Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19063,7 +20919,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVD + { OpcodeByte = 146u + Opcode = Opcode.KMOVD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19074,7 +20931,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 147(0x93) - { Opcode = Opcode.KMOVW + { OpcodeByte = 147u + Opcode = Opcode.KMOVW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19083,7 +20941,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVB + { OpcodeByte = 147u + Opcode = Opcode.KMOVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19092,7 +20951,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVQ + { OpcodeByte = 147u + Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19101,7 +20961,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KMOVD + { OpcodeByte = 147u + Opcode = Opcode.KMOVD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19120,7 +20981,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 151(0x97) |] [| // index 152(0x98) - { Opcode = Opcode.KORTESTW + { OpcodeByte = 152u + Opcode = Opcode.KORTESTW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19129,7 +20991,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORTESTB + { OpcodeByte = 152u + Opcode = Opcode.KORTESTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19138,7 +21001,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORTESTQ + { OpcodeByte = 152u + Opcode = Opcode.KORTESTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19147,7 +21011,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KORTESTD + { OpcodeByte = 152u + Opcode = Opcode.KORTESTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19158,7 +21023,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 153(0x99) - { Opcode = Opcode.KTESTW + { OpcodeByte = 153u + Opcode = Opcode.KTESTW PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19167,7 +21033,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KTESTB + { OpcodeByte = 153u + Opcode = Opcode.KTESTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19176,7 +21043,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KTESTQ + { OpcodeByte = 153u + Opcode = Opcode.KTESTQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19185,7 +21053,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KTESTD + { OpcodeByte = 153u + Opcode = Opcode.KTESTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -19236,7 +21105,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 173(0xAD) |] [| // index 174(0xAE) - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19245,7 +21115,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 174u + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19294,7 +21165,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 193(0xC1) |] [| // index 194(0xC2) - { Opcode = Opcode.VCMPPD + { OpcodeByte = 194u + Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19303,7 +21175,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPD + { OpcodeByte = 194u + Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19312,7 +21185,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPS + { OpcodeByte = 194u + Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19321,7 +21195,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPS + { OpcodeByte = 194u + Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19330,21 +21205,23 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPSD + { OpcodeByte = 194u + Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPSS + { OpcodeByte = 194u + Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -19352,7 +21229,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 195(0xC3) |] [| // index 196(0xC4) - { Opcode = Opcode.VPINSRW + { OpcodeByte = 196u + Opcode = Opcode.VPINSRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19363,7 +21241,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 197(0xC5) - { Opcode = Opcode.VPEXTRW + { OpcodeByte = 197u + Opcode = Opcode.VPEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -19374,7 +21253,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 198(0xC6) - { Opcode = Opcode.VSHUFPD + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19383,7 +21263,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPD + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19392,7 +21273,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPS + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19401,7 +21283,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPS + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19430,7 +21313,8 @@ let (vexTwo: InstructionCore[][]) = [| // index 207(0xCF) |] [| // index 208(0xD0) - { Opcode = Opcode.VADDSUBPD + { OpcodeByte = 208u + Opcode = Opcode.VADDSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19439,7 +21323,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSUBPD + { OpcodeByte = 208u + Opcode = Opcode.VADDSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19448,7 +21333,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSUBPS + { OpcodeByte = 208u + Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19457,7 +21343,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSUBPS + { OpcodeByte = 208u + Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19468,7 +21355,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 209(0xD1) - { Opcode = Opcode.VPSRLW + { OpcodeByte = 209u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19477,7 +21365,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 209u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19488,7 +21377,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 210(0xD2) - { Opcode = Opcode.VPSRLD + { OpcodeByte = 210u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19497,7 +21387,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 210u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19508,7 +21399,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 211(0xD3) - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 211u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19517,7 +21409,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 211u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19528,7 +21421,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 212(0xD4) - { Opcode = Opcode.VPADDQ + { OpcodeByte = 212u + Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19537,7 +21431,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDQ + { OpcodeByte = 212u + Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19548,7 +21443,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 213(0xD5) - { Opcode = Opcode.VPMULLW + { OpcodeByte = 213u + Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19557,7 +21453,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLW + { OpcodeByte = 213u + Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19568,18 +21465,20 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 214(0xD6) - { Opcode = Opcode.VMOVQ + { OpcodeByte = 214u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 215(0xD7) - { Opcode = Opcode.VPMOVMSKB + { OpcodeByte = 215u + Opcode = Opcode.VPMOVMSKB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19588,7 +21487,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVMSKB + { OpcodeByte = 215u + Opcode = Opcode.VPMOVMSKB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19599,7 +21499,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 216(0xD8) - { Opcode = Opcode.VPSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19608,7 +21509,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19619,7 +21521,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 217(0xD9) - { Opcode = Opcode.VPSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19628,7 +21531,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19639,7 +21543,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 218(0xDA) - { Opcode = Opcode.VPMINUB + { OpcodeByte = 218u + Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -19648,7 +21553,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUB + { OpcodeByte = 218u + Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -19659,7 +21565,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 219(0xDB) - { Opcode = Opcode.VPAND + { OpcodeByte = 219u + Opcode = Opcode.VPAND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19668,7 +21575,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAND + { OpcodeByte = 219u + Opcode = Opcode.VPAND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19679,7 +21587,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 220(0xDC) - { Opcode = Opcode.VPADDUSB + { OpcodeByte = 220u + Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19688,7 +21597,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSB + { OpcodeByte = 220u + Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19699,7 +21609,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.VPADDUSW + { OpcodeByte = 221u + Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19708,7 +21619,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSW + { OpcodeByte = 221u + Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19719,7 +21631,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.VPMAXUB + { OpcodeByte = 222u + Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -19728,7 +21641,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUB + { OpcodeByte = 222u + Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -19739,7 +21653,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.VPANDN + { OpcodeByte = 223u + Opcode = Opcode.VPANDN PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19748,7 +21663,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDN + { OpcodeByte = 223u + Opcode = Opcode.VPANDN PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19759,7 +21675,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 224(0xE0) - { Opcode = Opcode.VPAVGB + { OpcodeByte = 224u + Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19768,7 +21685,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGB + { OpcodeByte = 224u + Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19779,7 +21697,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 225(0xE1) - { Opcode = Opcode.VPSRAW + { OpcodeByte = 225u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19788,7 +21707,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 225u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19799,7 +21719,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 226(0xE2) - { Opcode = Opcode.VPSRAD + { OpcodeByte = 226u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19808,7 +21729,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 226u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19819,7 +21741,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 227(0xE3) - { Opcode = Opcode.VPAVGW + { OpcodeByte = 227u + Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19828,7 +21751,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGW + { OpcodeByte = 227u + Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19839,7 +21763,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 228(0xE4) - { Opcode = Opcode.VPMULHUW + { OpcodeByte = 228u + Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19848,7 +21773,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHUW + { OpcodeByte = 228u + Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19859,7 +21785,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 229(0xE5) - { Opcode = Opcode.VPMULHW + { OpcodeByte = 229u + Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19868,7 +21795,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHW + { OpcodeByte = 229u + Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19879,16 +21807,18 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 230(0xE6) - { Opcode = Opcode.VCVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19897,7 +21827,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19906,7 +21837,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19915,7 +21847,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19924,7 +21857,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19935,7 +21869,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 231(0xE7) - { Opcode = Opcode.VMOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19944,7 +21879,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19955,7 +21891,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 232(0xE8) - { Opcode = Opcode.VPSUBSB + { OpcodeByte = 232u + Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19964,7 +21901,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSB + { OpcodeByte = 232u + Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19975,7 +21913,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 233(0xE9) - { Opcode = Opcode.VPSUBSW + { OpcodeByte = 233u + Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -19984,7 +21923,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSW + { OpcodeByte = 233u + Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -19995,7 +21935,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 234(0xEA) - { Opcode = Opcode.VPMINSW + { OpcodeByte = 234u + Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -20004,7 +21945,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSW + { OpcodeByte = 234u + Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -20015,7 +21957,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 235(0xEB) - { Opcode = Opcode.VPOR + { OpcodeByte = 235u + Opcode = Opcode.VPOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20024,7 +21967,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOR + { OpcodeByte = 235u + Opcode = Opcode.VPOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20035,7 +21979,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 236(0xEC) - { Opcode = Opcode.VPADDSB + { OpcodeByte = 236u + Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20044,7 +21989,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSB + { OpcodeByte = 236u + Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20055,7 +22001,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 237(0xED) - { Opcode = Opcode.VPADDSW + { OpcodeByte = 237u + Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20064,7 +22011,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSW + { OpcodeByte = 237u + Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20075,7 +22023,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 238(0xEE) - { Opcode = Opcode.VPMAXSW + { OpcodeByte = 238u + Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20084,7 +22033,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSW + { OpcodeByte = 238u + Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20095,7 +22045,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 239(0xEF) - { Opcode = Opcode.VPXOR + { OpcodeByte = 239u + Opcode = Opcode.VPXOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20104,7 +22055,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXOR + { OpcodeByte = 239u + Opcode = Opcode.VPXOR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20115,7 +22067,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 240(0xF0) - { Opcode = Opcode.VLDDQU + { OpcodeByte = 240u + Opcode = Opcode.VLDDQU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20124,7 +22077,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VLDDQU + { OpcodeByte = 240u + Opcode = Opcode.VLDDQU PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20135,7 +22089,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 241(0xF1) - { Opcode = Opcode.VPSLLW + { OpcodeByte = 241u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20144,7 +22099,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 241u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20155,7 +22111,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 242(0xF2) - { Opcode = Opcode.VPSLLD + { OpcodeByte = 242u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20164,7 +22121,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 242u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20175,7 +22133,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 243(0xF3) - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 243u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20184,7 +22143,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 243u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20195,7 +22155,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 244(0xF4) - { Opcode = Opcode.VPMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20204,7 +22165,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20215,7 +22177,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 245(0xF5) - { Opcode = Opcode.VPMADDWD + { OpcodeByte = 245u + Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20224,7 +22187,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDWD + { OpcodeByte = 245u + Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20235,7 +22199,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 246(0xF6) - { Opcode = Opcode.VPSADBW + { OpcodeByte = 246u + Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20244,7 +22209,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSADBW + { OpcodeByte = 246u + Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20255,7 +22221,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 247(0xF7) - { Opcode = Opcode.VMASKMOVDQU + { OpcodeByte = 247u + Opcode = Opcode.VMASKMOVDQU PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20266,7 +22233,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 248(0xF8) - { Opcode = Opcode.VPSUBB + { OpcodeByte = 248u + Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20275,7 +22243,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBB + { OpcodeByte = 248u + Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20286,7 +22255,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 249(0xF9) - { Opcode = Opcode.VPSUBW + { OpcodeByte = 249u + Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20295,7 +22265,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBW + { OpcodeByte = 249u + Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20306,7 +22277,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 250(0xFA) - { Opcode = Opcode.VPSUBD + { OpcodeByte = 250u + Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20315,7 +22287,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBD + { OpcodeByte = 250u + Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20326,7 +22299,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 251(0xFB) - { Opcode = Opcode.VPSUBQ + { OpcodeByte = 251u + Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20335,7 +22309,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBQ + { OpcodeByte = 251u + Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20346,7 +22321,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 252(0xFC) - { Opcode = Opcode.VPADDB + { OpcodeByte = 252u + Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20355,7 +22331,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDB + { OpcodeByte = 252u + Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20366,7 +22343,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 253(0xFD) - { Opcode = Opcode.VPADDW + { OpcodeByte = 253u + Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20375,7 +22353,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDW + { OpcodeByte = 253u + Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20386,7 +22365,8 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 254(0xFE) - { Opcode = Opcode.VPADDD + { OpcodeByte = 254u + Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20395,7 +22375,8 @@ let (vexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDD + { OpcodeByte = 254u + Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20412,7 +22393,8 @@ let (vexTwo: InstructionCore[][]) = let (vexThree38: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.VPSHUFB + { OpcodeByte = 0u + Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20421,7 +22403,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFB + { OpcodeByte = 0u + Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20432,7 +22415,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 1(0x01) - { Opcode = Opcode.VPHADDW + { OpcodeByte = 1u + Opcode = Opcode.VPHADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20441,7 +22425,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHADDW + { OpcodeByte = 1u + Opcode = Opcode.VPHADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20452,7 +22437,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 2(0x02) - { Opcode = Opcode.VPHADDD + { OpcodeByte = 2u + Opcode = Opcode.VPHADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20461,7 +22447,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHADDD + { OpcodeByte = 2u + Opcode = Opcode.VPHADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20472,7 +22459,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 3(0x03) - { Opcode = Opcode.VPHADDSW + { OpcodeByte = 3u + Opcode = Opcode.VPHADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20481,7 +22469,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHADDSW + { OpcodeByte = 3u + Opcode = Opcode.VPHADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20492,7 +22481,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 4(0x04) - { Opcode = Opcode.VPMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20501,7 +22491,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20512,7 +22503,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 5(0x05) - { Opcode = Opcode.VPHSUBW + { OpcodeByte = 5u + Opcode = Opcode.VPHSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20521,7 +22513,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHSUBW + { OpcodeByte = 5u + Opcode = Opcode.VPHSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20532,7 +22525,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 6(0x06) - { Opcode = Opcode.VPHSUBD + { OpcodeByte = 6u + Opcode = Opcode.VPHSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20541,7 +22535,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHSUBD + { OpcodeByte = 6u + Opcode = Opcode.VPHSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20552,7 +22547,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 7(0x07) - { Opcode = Opcode.VPHSUBSW + { OpcodeByte = 7u + Opcode = Opcode.VPHSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20561,7 +22557,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPHSUBSW + { OpcodeByte = 7u + Opcode = Opcode.VPHSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20572,7 +22569,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 8(0x08) - { Opcode = Opcode.VPSIGNB + { OpcodeByte = 8u + Opcode = Opcode.VPSIGNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20581,7 +22579,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSIGNB + { OpcodeByte = 8u + Opcode = Opcode.VPSIGNB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20592,7 +22591,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 9(0x09) - { Opcode = Opcode.VPSIGNW + { OpcodeByte = 9u + Opcode = Opcode.VPSIGNW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20601,7 +22601,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSIGNW + { OpcodeByte = 9u + Opcode = Opcode.VPSIGNW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20612,7 +22613,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 10(0x0A) - { Opcode = Opcode.VPSIGND + { OpcodeByte = 10u + Opcode = Opcode.VPSIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20621,7 +22623,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSIGND + { OpcodeByte = 10u + Opcode = Opcode.VPSIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20632,7 +22635,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 11(0x0B) - { Opcode = Opcode.VPMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20641,7 +22645,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20652,7 +22657,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 12(0x0C) - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 12u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20661,7 +22667,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 12u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20672,7 +22679,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 13(0x0D) - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 13u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20681,7 +22689,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 13u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20692,7 +22701,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 14(0x0E) - { Opcode = Opcode.VTESTPS + { OpcodeByte = 14u + Opcode = Opcode.VTESTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20701,7 +22711,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VTESTPS + { OpcodeByte = 14u + Opcode = Opcode.VTESTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20712,7 +22723,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 15(0x0F) - { Opcode = Opcode.VTESTPD + { OpcodeByte = 15u + Opcode = Opcode.VTESTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20721,7 +22733,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VTESTPD + { OpcodeByte = 15u + Opcode = Opcode.VTESTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20738,16 +22751,18 @@ let (vexThree38: InstructionCore[][]) = [| // index 18(0x12) |] [| // index 19(0x13) - { Opcode = Opcode.VCVTPH2PS + { OpcodeByte = 19u + Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPH2PS + { OpcodeByte = 19u + Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20762,7 +22777,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 21(0x15) |] [| // index 22(0x16) - { Opcode = Opcode.VPERMPS + { OpcodeByte = 22u + Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20773,7 +22789,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.VPTEST + { OpcodeByte = 23u + Opcode = Opcode.VPTEST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20782,7 +22799,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTEST + { OpcodeByte = 23u + Opcode = Opcode.VPTEST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20793,7 +22811,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 24(0x18) - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20802,7 +22821,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20811,7 +22831,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -20820,7 +22841,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20831,7 +22853,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 25(0x19) - { Opcode = Opcode.VBROADCASTSD + { OpcodeByte = 25u + Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20840,7 +22863,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSD + { OpcodeByte = 25u + Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20851,7 +22875,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 26(0x1A) - { Opcode = Opcode.VBROADCASTF128 + { OpcodeByte = 26u + Opcode = Opcode.VBROADCASTF128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -20864,7 +22889,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 27(0x1B) |] [| // index 28(0x1C) - { Opcode = Opcode.VPABSB + { OpcodeByte = 28u + Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20873,7 +22899,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSB + { OpcodeByte = 28u + Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20884,7 +22911,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 29(0x1D) - { Opcode = Opcode.VPABSW + { OpcodeByte = 29u + Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20893,7 +22921,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSW + { OpcodeByte = 29u + Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20904,7 +22933,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 30(0x1E) - { Opcode = Opcode.VPABSD + { OpcodeByte = 30u + Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -20913,7 +22943,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSD + { OpcodeByte = 30u + Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20926,16 +22957,18 @@ let (vexThree38: InstructionCore[][]) = [| // index 31(0x1F) |] [| // index 32(0x20) - { Opcode = Opcode.VPMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -20946,56 +22979,62 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.VPMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.VPMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 35(0x23) - { Opcode = Opcode.VPMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21006,36 +23045,40 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 36(0x24) - { Opcode = Opcode.VPMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 37(0x25) - { Opcode = Opcode.VPMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21050,7 +23093,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 39(0x27) |] [| // index 40(0x28) - { Opcode = Opcode.VPMULDQ + { OpcodeByte = 40u + Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21059,7 +23103,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULDQ + { OpcodeByte = 40u + Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21070,7 +23115,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.VPCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21079,7 +23125,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21090,7 +23137,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.VMOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21099,7 +23147,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21110,7 +23159,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.VPACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -21119,7 +23169,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -21130,7 +23181,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 44(0x2C) - { Opcode = Opcode.VMASKMOVPS + { OpcodeByte = 44u + Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21139,7 +23191,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMASKMOVPS + { OpcodeByte = 44u + Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21150,7 +23203,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 45(0x2D) - { Opcode = Opcode.VMASKMOVPD + { OpcodeByte = 45u + Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21159,7 +23213,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMASKMOVPD + { OpcodeByte = 45u + Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21170,7 +23225,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 46(0x2E) - { Opcode = Opcode.VMASKMOVPS + { OpcodeByte = 46u + Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21179,7 +23235,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMASKMOVPS + { OpcodeByte = 46u + Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21190,7 +23247,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 47(0x2F) - { Opcode = Opcode.VMASKMOVPD + { OpcodeByte = 47u + Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21199,7 +23257,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMASKMOVPD + { OpcodeByte = 47u + Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21210,16 +23269,18 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 48(0x30) - { Opcode = Opcode.VPMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21230,56 +23291,62 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 49(0x31) - { Opcode = Opcode.VPMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 50(0x32) - { Opcode = Opcode.VPMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 51(0x33) - { Opcode = Opcode.VPMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21290,36 +23357,40 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 52(0x34) - { Opcode = Opcode.VPMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 53(0x35) - { Opcode = Opcode.VPMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21330,7 +23401,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 54(0x36) - { Opcode = Opcode.VPERMD + { OpcodeByte = 54u + Opcode = Opcode.VPERMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21341,7 +23413,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 55(0x37) - { Opcode = Opcode.VPCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21350,7 +23423,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21361,7 +23435,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 56(0x38) - { Opcode = Opcode.VPMINSB + { OpcodeByte = 56u + Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -21370,7 +23445,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSB + { OpcodeByte = 56u + Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -21381,7 +23457,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 57(0x39) - { Opcode = Opcode.VPMINSD + { OpcodeByte = 57u + Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21390,7 +23467,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSD + { OpcodeByte = 57u + Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21401,7 +23479,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 58(0x3A) - { Opcode = Opcode.VPMINUW + { OpcodeByte = 58u + Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -21410,7 +23489,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUW + { OpcodeByte = 58u + Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -21421,7 +23501,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 59(0x3B) - { Opcode = Opcode.VPMINUD + { OpcodeByte = 59u + Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21430,7 +23511,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUD + { OpcodeByte = 59u + Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21441,7 +23523,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 60(0x3C) - { Opcode = Opcode.VPMAXSB + { OpcodeByte = 60u + Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21450,7 +23533,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSB + { OpcodeByte = 60u + Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21461,7 +23545,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 61(0x3D) - { Opcode = Opcode.VPMAXSD + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21470,7 +23555,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSD + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21481,7 +23567,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 62(0x3E) - { Opcode = Opcode.VPMAXUW + { OpcodeByte = 62u + Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -21490,7 +23577,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUW + { OpcodeByte = 62u + Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 @@ -21501,7 +23589,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 63(0x3F) - { Opcode = Opcode.VPMAXUD + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21510,7 +23599,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUD + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21521,7 +23611,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 64(0x40) - { Opcode = Opcode.VPMULLD + { OpcodeByte = 64u + Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21530,7 +23621,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLD + { OpcodeByte = 64u + Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -21541,7 +23633,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 65(0x41) - { Opcode = Opcode.VPHMINPOSUW + { OpcodeByte = 65u + Opcode = Opcode.VPHMINPOSUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -21558,7 +23651,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 68(0x44) |] [| // index 69(0x45) - { Opcode = Opcode.VPSRLVD + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21567,7 +23661,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVQ + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -21576,7 +23671,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVD + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21585,7 +23681,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVQ + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -21596,7 +23693,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 70(0x46) - { Opcode = Opcode.VPSRAVD + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21605,7 +23703,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVD + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21616,7 +23715,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 71(0x47) - { Opcode = Opcode.VPSLLVD + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21625,7 +23725,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVQ + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -21634,7 +23735,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVD + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21643,7 +23745,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVQ + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -21656,7 +23759,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 72(0x48) |] [| // index 73(0x49) - { Opcode = Opcode.InvalOP + { OpcodeByte = 73u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21665,7 +23769,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 73u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21674,7 +23779,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 73u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21683,7 +23789,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 73u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21696,7 +23803,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 74(0x4A) |] [| // index 75(0x4B) - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21705,7 +23813,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21714,7 +23823,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 75u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21733,7 +23843,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 79(0x4F) |] [| // index 80(0x50) - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21742,7 +23853,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21751,7 +23863,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21760,7 +23873,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21769,7 +23883,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21778,7 +23893,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 80u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21787,7 +23903,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSD + { OpcodeByte = 80u + Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21796,7 +23913,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSD + { OpcodeByte = 80u + Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21807,7 +23925,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 81(0x51) - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21816,7 +23935,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21825,7 +23945,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21834,7 +23955,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21843,7 +23965,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21852,7 +23975,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 81u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21861,7 +23985,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSDS + { OpcodeByte = 81u + Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21870,7 +23995,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSDS + { OpcodeByte = 81u + Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21881,7 +24007,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 82(0x52) - { Opcode = Opcode.VPDPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21890,7 +24017,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21901,7 +24029,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 83(0x53) - { Opcode = Opcode.VPDPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21910,7 +24039,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21929,47 +24059,52 @@ let (vexThree38: InstructionCore[][]) = [| // index 87(0x57) |] [| // index 88(0x58) - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 88u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 88u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 89(0x59) - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 89u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 89u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 90(0x5A) - { Opcode = Opcode.VBROADCASTI128 + { OpcodeByte = 90u + Opcode = Opcode.VBROADCASTI128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -21982,7 +24117,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 91(0x5B) |] [| // index 92(0x5C) - { Opcode = Opcode.InvalOP + { OpcodeByte = 92u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -21991,7 +24127,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 92u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22004,7 +24141,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 93(0x5D) |] [| // index 94(0x5E) - { Opcode = Opcode.InvalOP + { OpcodeByte = 94u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22013,7 +24151,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 94u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22022,7 +24161,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 94u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22031,7 +24171,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 94u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22080,7 +24221,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 113(0x71) |] [| // index 114(0x72) - { Opcode = Opcode.VCVTNEPS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22089,7 +24231,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNEPS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22110,41 +24253,45 @@ let (vexThree38: InstructionCore[][]) = [| // index 119(0x77) |] [| // index 120(0x78) - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 120u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M8" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 120u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; Unknown "XMM2/M8" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 121(0x79) - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 121u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 121u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg Sz256; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -22186,7 +24333,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 139(0x8B) |] [| // index 140(0x8C) - { Opcode = Opcode.VPMASKMOVD + { OpcodeByte = 140u + Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22195,7 +24343,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVD + { OpcodeByte = 140u + Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22204,7 +24353,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVQ + { OpcodeByte = 140u + Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22213,7 +24363,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVQ + { OpcodeByte = 140u + Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22226,7 +24377,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 141(0x8D) |] [| // index 142(0x8E) - { Opcode = Opcode.VPMASKMOVD + { OpcodeByte = 142u + Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22235,7 +24387,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVD + { OpcodeByte = 142u + Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22244,7 +24397,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVQ + { OpcodeByte = 142u + Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22253,7 +24407,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMASKMOVQ + { OpcodeByte = 142u + Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22266,7 +24421,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 143(0x8F) |] [| // index 144(0x90) - { Opcode = Opcode.VPGATHERDD + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22275,7 +24431,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDD + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22284,7 +24441,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDQ + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22293,7 +24451,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDQ + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22304,7 +24463,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 145(0x91) - { Opcode = Opcode.VPGATHERQD + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22313,7 +24473,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQD + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22322,7 +24483,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQQ + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22331,7 +24493,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQQ + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22342,7 +24505,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 146(0x92) - { Opcode = Opcode.VGATHERDPD + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22351,7 +24515,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPD + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22360,7 +24525,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPS + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22369,7 +24535,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPS + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22380,7 +24547,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 147(0x93) - { Opcode = Opcode.VGATHERQPD + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22389,7 +24557,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPD + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22398,7 +24567,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPS + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22407,7 +24577,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPS + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22422,7 +24593,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 149(0x95) |] [| // index 150(0x96) - { Opcode = Opcode.VFMADDSUB132PD + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22431,7 +24603,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PD + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22440,7 +24613,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PS + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22449,7 +24623,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PS + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22460,7 +24635,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 151(0x97) - { Opcode = Opcode.VFMSUBADD132PD + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22469,7 +24645,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PD + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22478,7 +24655,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PS + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22487,7 +24665,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PS + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22498,7 +24677,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 152(0x98) - { Opcode = Opcode.VFMADD132PD + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22507,7 +24687,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PD + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22516,7 +24697,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PS + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22525,7 +24707,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PS + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22536,27 +24719,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 153(0x99) - { Opcode = Opcode.VFMADD132SD + { OpcodeByte = 153u + Opcode = Opcode.VFMADD132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132SS + { OpcodeByte = 153u + Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 154(0x9A) - { Opcode = Opcode.VFMSUB132PD + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22565,7 +24751,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PD + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22574,7 +24761,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PS + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22583,7 +24771,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PS + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22594,27 +24783,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 155(0x9B) - { Opcode = Opcode.VFMSUB132SD + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132SS + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 156(0x9C) - { Opcode = Opcode.VFNMADD132PD + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22623,7 +24815,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PD + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22632,7 +24825,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PS + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22641,7 +24835,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PS + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22652,27 +24847,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 157(0x9D) - { Opcode = Opcode.VFNMADD132SD + { OpcodeByte = 157u + Opcode = Opcode.VFNMADD132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132SS + { OpcodeByte = 157u + Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 158(0x9E) - { Opcode = Opcode.VFNMSUB132PD + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22681,7 +24879,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PD + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22690,7 +24889,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PS + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22699,7 +24899,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PS + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22710,21 +24911,23 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 159(0x9F) - { Opcode = Opcode.VFNMSUB132SD + { OpcodeByte = 159u + Opcode = Opcode.VFNMSUB132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132SS + { OpcodeByte = 159u + Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -22742,7 +24945,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 165(0xA5) |] [| // index 166(0xA6) - { Opcode = Opcode.VFMADDSUB213PD + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22751,7 +24955,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PD + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22760,7 +24965,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PS + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22769,7 +24975,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PS + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22780,7 +24987,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 167(0xA7) - { Opcode = Opcode.VFMSUBADD213PD + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22789,7 +24997,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PD + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22798,7 +25007,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PS + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22807,7 +25017,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PS + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22818,7 +25029,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 168(0xA8) - { Opcode = Opcode.VFMADD213PD + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22827,7 +25039,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PD + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22836,7 +25049,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PS + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22845,7 +25059,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PS + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22856,27 +25071,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 169(0xA9) - { Opcode = Opcode.VFMADD213SD + { OpcodeByte = 169u + Opcode = Opcode.VFMADD213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213SS + { OpcodeByte = 169u + Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 170(0xAA) - { Opcode = Opcode.VFMSUB213PD + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22885,7 +25103,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PD + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22894,7 +25113,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PS + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22903,7 +25123,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PS + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22914,27 +25135,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 171(0xAB) - { Opcode = Opcode.VFMSUB213SD + { OpcodeByte = 171u + Opcode = Opcode.VFMSUB213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213SS + { OpcodeByte = 171u + Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 172(0xAC) - { Opcode = Opcode.VFNMADD213PD + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -22943,7 +25167,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PD + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -22952,7 +25177,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PS + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -22961,7 +25187,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PS + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -22972,27 +25199,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 173(0xAD) - { Opcode = Opcode.VFNMADD213SD + { OpcodeByte = 173u + Opcode = Opcode.VFNMADD213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213SS + { OpcodeByte = 173u + Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 174(0xAE) - { Opcode = Opcode.VFNMSUB213PD + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23001,7 +25231,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PD + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23010,7 +25241,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PS + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23019,7 +25251,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PS + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23030,27 +25263,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 175(0xAF) - { Opcode = Opcode.VFNMSUB213SD + { OpcodeByte = 175u + Opcode = Opcode.VFNMSUB213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213SS + { OpcodeByte = 175u + Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 176(0xB0) - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23059,7 +25295,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23068,7 +25305,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23077,7 +25315,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23086,7 +25325,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23095,7 +25335,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23104,7 +25345,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23113,7 +25355,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 176u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23124,7 +25367,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 177(0xB1) - { Opcode = Opcode.InvalOP + { OpcodeByte = 177u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23133,7 +25377,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 177u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23142,7 +25387,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 177u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23151,7 +25397,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 177u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23166,7 +25413,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 179(0xB3) |] [| // index 180(0xB4) - { Opcode = Opcode.VPMADD52LUQ + { OpcodeByte = 180u + Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23175,7 +25423,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52LUQ + { OpcodeByte = 180u + Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23186,7 +25435,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 181(0xB5) - { Opcode = Opcode.VPMADD52HUQ + { OpcodeByte = 181u + Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23195,7 +25445,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52HUQ + { OpcodeByte = 181u + Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23206,7 +25457,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 182(0xB6) - { Opcode = Opcode.VFMADDSUB231PD + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23215,7 +25467,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PD + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23224,7 +25477,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PS + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23233,7 +25487,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PS + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23244,7 +25499,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 183(0xB7) - { Opcode = Opcode.VFMSUBADD231PD + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23253,7 +25509,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PD + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23262,7 +25519,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PS + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23271,7 +25529,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PS + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23282,7 +25541,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 184(0xB8) - { Opcode = Opcode.VFMADD231PD + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23291,7 +25551,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PD + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23300,7 +25561,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PS + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23309,7 +25571,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PS + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23320,27 +25583,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 185(0xB9) - { Opcode = Opcode.VFMADD231SD + { OpcodeByte = 185u + Opcode = Opcode.VFMADD231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231SS + { OpcodeByte = 185u + Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 186(0xBA) - { Opcode = Opcode.VFMSUB231PD + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23349,7 +25615,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PD + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23358,7 +25625,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PS + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23367,7 +25635,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PS + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23378,27 +25647,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 187(0xBB) - { Opcode = Opcode.VFMSUB231SD + { OpcodeByte = 187u + Opcode = Opcode.VFMSUB231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231SS + { OpcodeByte = 187u + Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 188(0xBC) - { Opcode = Opcode.VFNMADD231PD + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23407,7 +25679,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PD + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23416,7 +25689,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PS + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23425,7 +25699,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PS + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23436,27 +25711,30 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 189(0xBD) - { Opcode = Opcode.VFNMADD231SD + { OpcodeByte = 189u + Opcode = Opcode.VFNMADD231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231SS + { OpcodeByte = 189u + Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 190(0xBE) - { Opcode = Opcode.VFNMSUB231PD + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23465,7 +25743,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PD + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -23474,7 +25753,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PS + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23483,7 +25763,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PS + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23494,21 +25775,23 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 191(0xBF) - { Opcode = Opcode.VFNMSUB231SD + { OpcodeByte = 191u + Opcode = Opcode.VFNMSUB231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231SS + { OpcodeByte = 191u + Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23536,7 +25819,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 202(0xCA) |] [| // index 203(0xCB) - { Opcode = Opcode.InvalOP + { OpcodeByte = 203u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23547,7 +25831,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 204(0xCC) - { Opcode = Opcode.InvalOP + { OpcodeByte = 204u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23558,7 +25843,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 205(0xCD) - { Opcode = Opcode.InvalOP + { OpcodeByte = 205u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23571,7 +25857,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 206(0xCE) |] [| // index 207(0xCF) - { Opcode = Opcode.VGF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23580,7 +25867,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23595,7 +25883,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 209(0xD1) |] [| // index 210(0xD2) - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23604,7 +25893,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23613,7 +25903,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23622,7 +25913,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23631,7 +25923,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23640,7 +25933,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 210u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23651,7 +25945,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 211(0xD3) - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23660,7 +25955,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23669,7 +25965,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23678,7 +25975,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23687,7 +25985,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23696,7 +25995,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 211u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23719,7 +26019,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 217(0xD9) |] [| // index 218(0xDA) - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23728,7 +26029,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23737,7 +26039,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23746,7 +26049,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23755,7 +26059,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23764,7 +26069,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 218u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -23775,7 +26081,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 219(0xDB) - { Opcode = Opcode.InvalOP + { OpcodeByte = 219u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -23786,7 +26093,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 220(0xDC) - { Opcode = Opcode.VAESENC + { OpcodeByte = 220u + Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -23795,7 +26103,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENC + { OpcodeByte = 220u + Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -23806,7 +26115,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.VAESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -23815,7 +26125,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -23826,7 +26137,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.VAESDEC + { OpcodeByte = 222u + Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -23835,7 +26147,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDEC + { OpcodeByte = 222u + Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -23846,7 +26159,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.VAESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -23855,7 +26169,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -23866,7 +26181,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 224(0xE0) - { Opcode = Opcode.InvalOP + { OpcodeByte = 224u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23875,7 +26191,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 224u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23886,7 +26203,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 225(0xE1) - { Opcode = Opcode.InvalOP + { OpcodeByte = 225u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23895,7 +26213,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 225u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23906,7 +26225,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 226(0xE2) - { Opcode = Opcode.InvalOP + { OpcodeByte = 226u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23915,7 +26235,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 226u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23926,7 +26247,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 227(0xE3) - { Opcode = Opcode.InvalOP + { OpcodeByte = 227u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23935,7 +26257,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 227u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23946,7 +26269,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 228(0xE4) - { Opcode = Opcode.InvalOP + { OpcodeByte = 228u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23955,7 +26279,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 228u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23966,7 +26291,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 229(0xE5) - { Opcode = Opcode.InvalOP + { OpcodeByte = 229u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23975,7 +26301,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 229u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -23986,7 +26313,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 230(0xE6) - { Opcode = Opcode.InvalOP + { OpcodeByte = 230u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -23995,7 +26323,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 230u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24006,7 +26335,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 231(0xE7) - { Opcode = Opcode.InvalOP + { OpcodeByte = 231u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24015,7 +26345,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 231u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24026,7 +26357,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 232(0xE8) - { Opcode = Opcode.InvalOP + { OpcodeByte = 232u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24035,7 +26367,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 232u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24046,7 +26379,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 233(0xE9) - { Opcode = Opcode.InvalOP + { OpcodeByte = 233u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24055,7 +26389,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 233u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24066,7 +26401,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 234(0xEA) - { Opcode = Opcode.InvalOP + { OpcodeByte = 234u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24075,7 +26411,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 234u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24086,7 +26423,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 235(0xEB) - { Opcode = Opcode.InvalOP + { OpcodeByte = 235u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24095,7 +26433,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 235u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24106,7 +26445,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 236(0xEC) - { Opcode = Opcode.InvalOP + { OpcodeByte = 236u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24115,7 +26455,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 236u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24126,7 +26467,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 237(0xED) - { Opcode = Opcode.InvalOP + { OpcodeByte = 237u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24135,7 +26477,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 237u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24146,7 +26489,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 238(0xEE) - { Opcode = Opcode.InvalOP + { OpcodeByte = 238u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24155,7 +26499,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 238u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24166,7 +26511,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 239(0xEF) - { Opcode = Opcode.InvalOP + { OpcodeByte = 239u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24175,7 +26521,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 239u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24190,7 +26537,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 241(0xF1) |] [| // index 242(0xF2) - { Opcode = Opcode.ANDN + { OpcodeByte = 242u + Opcode = Opcode.ANDN PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24199,7 +26547,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.ANDN + { OpcodeByte = 242u + Opcode = Opcode.ANDN PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24210,7 +26559,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 243(0xF3) - { Opcode = Opcode.BLSI + { OpcodeByte = 243u + Opcode = Opcode.BLSI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24219,7 +26569,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BLSI + { OpcodeByte = 243u + Opcode = Opcode.BLSI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24228,7 +26579,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BLSMSK + { OpcodeByte = 243u + Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24237,7 +26589,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BLSMSK + { OpcodeByte = 243u + Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24246,7 +26599,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BLSR + { OpcodeByte = 243u + Opcode = Opcode.BLSR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24255,7 +26609,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BLSR + { OpcodeByte = 243u + Opcode = Opcode.BLSR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24268,7 +26623,8 @@ let (vexThree38: InstructionCore[][]) = [| // index 244(0xF4) |] [| // index 245(0xF5) - { Opcode = Opcode.BZHI + { OpcodeByte = 245u + Opcode = Opcode.BZHI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24277,7 +26633,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BZHI + { OpcodeByte = 245u + Opcode = Opcode.BZHI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24286,7 +26643,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PDEP + { OpcodeByte = 245u + Opcode = Opcode.PDEP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24295,7 +26653,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PDEP + { OpcodeByte = 245u + Opcode = Opcode.PDEP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24304,7 +26663,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PEXT + { OpcodeByte = 245u + Opcode = Opcode.PEXT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24313,7 +26673,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.PEXT + { OpcodeByte = 245u + Opcode = Opcode.PEXT PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24324,7 +26685,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 246(0xF6) - { Opcode = Opcode.MULX + { OpcodeByte = 246u + Opcode = Opcode.MULX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24333,7 +26695,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.MULX + { OpcodeByte = 246u + Opcode = Opcode.MULX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24344,7 +26707,8 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 247(0xF7) - { Opcode = Opcode.BEXTR + { OpcodeByte = 247u + Opcode = Opcode.BEXTR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24353,7 +26717,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.BEXTR + { OpcodeByte = 247u + Opcode = Opcode.BEXTR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24362,7 +26727,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SARX + { OpcodeByte = 247u + Opcode = Opcode.SARX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24371,7 +26737,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SHLX + { OpcodeByte = 247u + Opcode = Opcode.SHLX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24380,7 +26747,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SHRX + { OpcodeByte = 247u + Opcode = Opcode.SHRX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24389,7 +26757,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SARX + { OpcodeByte = 247u + Opcode = Opcode.SARX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24398,7 +26767,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SHLX + { OpcodeByte = 247u + Opcode = Opcode.SHLX PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24407,7 +26777,8 @@ let (vexThree38: InstructionCore[][]) = OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.SHRX + { OpcodeByte = 247u + Opcode = Opcode.SHRX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24438,7 +26809,8 @@ let (vexThree38: InstructionCore[][]) = let (vexThree3A: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.VPERMQ + { OpcodeByte = 0u + Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -24449,7 +26821,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 1(0x01) - { Opcode = Opcode.VPERMPD + { OpcodeByte = 1u + Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -24460,7 +26833,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 2(0x02) - { Opcode = Opcode.VPBLENDD + { OpcodeByte = 2u + Opcode = Opcode.VPBLENDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24469,7 +26843,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDD + { OpcodeByte = 2u + Opcode = Opcode.VPBLENDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24482,7 +26857,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 3(0x03) |] [| // index 4(0x04) - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 4u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24491,7 +26867,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 4u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24502,7 +26879,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 5(0x05) - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 5u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24511,7 +26889,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 5u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24522,7 +26901,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 6(0x06) - { Opcode = Opcode.VPERM2F128 + { OpcodeByte = 6u + Opcode = Opcode.VPERM2F128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24535,7 +26915,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 7(0x07) |] [| // index 8(0x08) - { Opcode = Opcode.VROUNDPS + { OpcodeByte = 8u + Opcode = Opcode.VROUNDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24544,7 +26925,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VROUNDPS + { OpcodeByte = 8u + Opcode = Opcode.VROUNDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24555,7 +26937,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 9(0x09) - { Opcode = Opcode.VROUNDPD + { OpcodeByte = 9u + Opcode = Opcode.VROUNDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24564,7 +26947,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VROUNDPD + { OpcodeByte = 9u + Opcode = Opcode.VROUNDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24575,29 +26959,32 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 10(0x0A) - { Opcode = Opcode.VROUNDSS + { OpcodeByte = 10u + Opcode = Opcode.VROUNDSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 11(0x0B) - { Opcode = Opcode.VROUNDSD + { OpcodeByte = 11u + Opcode = Opcode.VROUNDSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 12(0x0C) - { Opcode = Opcode.VBLENDPS + { OpcodeByte = 12u + Opcode = Opcode.VBLENDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24606,7 +26993,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDPS + { OpcodeByte = 12u + Opcode = Opcode.VBLENDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24617,7 +27005,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 13(0x0D) - { Opcode = Opcode.VBLENDPD + { OpcodeByte = 13u + Opcode = Opcode.VBLENDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24626,7 +27015,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDPD + { OpcodeByte = 13u + Opcode = Opcode.VBLENDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24637,7 +27027,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 14(0x0E) - { Opcode = Opcode.VPBLENDW + { OpcodeByte = 14u + Opcode = Opcode.VPBLENDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24646,7 +27037,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDW + { OpcodeByte = 14u + Opcode = Opcode.VPBLENDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24657,7 +27049,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 15(0x0F) - { Opcode = Opcode.VPALIGNR + { OpcodeByte = 15u + Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24666,7 +27059,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPALIGNR + { OpcodeByte = 15u + Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24685,7 +27079,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 19(0x13) |] [| // index 20(0x14) - { Opcode = Opcode.VPEXTRB + { OpcodeByte = 20u + Opcode = Opcode.VPEXTRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24696,7 +27091,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.VPEXTRW + { OpcodeByte = 21u + Opcode = Opcode.VPEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24707,7 +27103,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.VPEXTRD + { OpcodeByte = 22u + Opcode = Opcode.VPEXTRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24716,7 +27113,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXTRQ + { OpcodeByte = 22u + Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24727,7 +27125,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.VEXTRACTPS + { OpcodeByte = 23u + Opcode = Opcode.VEXTRACTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24738,7 +27137,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 24(0x18) - { Opcode = Opcode.VINSERTF128 + { OpcodeByte = 24u + Opcode = Opcode.VINSERTF128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24749,7 +27149,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 25(0x19) - { Opcode = Opcode.VEXTRACTF128 + { OpcodeByte = 25u + Opcode = Opcode.VEXTRACTF128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24766,16 +27167,18 @@ let (vexThree3A: InstructionCore[][]) = [| // index 28(0x1C) |] [| // index 29(0x1D) - { Opcode = Opcode.VCVTPS2PH + { OpcodeByte = 29u + Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PH + { OpcodeByte = 29u + Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24790,7 +27193,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 31(0x1F) |] [| // index 32(0x20) - { Opcode = Opcode.VPINSRB + { OpcodeByte = 32u + Opcode = Opcode.VPINSRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24801,18 +27205,20 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.VINSERTPS + { OpcodeByte = 33u + Opcode = Opcode.VINSERTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.VPINSRD + { OpcodeByte = 34u + Opcode = Opcode.VPINSRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24821,7 +27227,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPINSRQ + { OpcodeByte = 34u + Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24858,7 +27265,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 47(0x2F) |] [| // index 48(0x30) - { Opcode = Opcode.KSHIFTRW + { OpcodeByte = 48u + Opcode = Opcode.KSHIFTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24867,7 +27275,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RRI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KSHIFTRB + { OpcodeByte = 48u + Opcode = Opcode.KSHIFTRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24878,7 +27287,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 49(0x31) - { Opcode = Opcode.KSHIFTRQ + { OpcodeByte = 49u + Opcode = Opcode.KSHIFTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24887,7 +27297,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RRI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KSHIFTRD + { OpcodeByte = 49u + Opcode = Opcode.KSHIFTRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24898,7 +27309,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 50(0x32) - { Opcode = Opcode.KSHIFTLW + { OpcodeByte = 50u + Opcode = Opcode.KSHIFTLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24907,7 +27319,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RRI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KSHIFTLB + { OpcodeByte = 50u + Opcode = Opcode.KSHIFTLB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24918,7 +27331,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 51(0x33) - { Opcode = Opcode.KSHIFTLQ + { OpcodeByte = 51u + Opcode = Opcode.KSHIFTLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -24927,7 +27341,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RRI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.KSHIFTLD + { OpcodeByte = 51u + Opcode = Opcode.KSHIFTLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -24946,7 +27361,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 55(0x37) |] [| // index 56(0x38) - { Opcode = Opcode.VINSERTI128 + { OpcodeByte = 56u + Opcode = Opcode.VINSERTI128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24957,7 +27373,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 57(0x39) - { Opcode = Opcode.VEXTRACTI128 + { OpcodeByte = 57u + Opcode = Opcode.VEXTRACTI128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -24980,7 +27397,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 63(0x3F) |] [| // index 64(0x40) - { Opcode = Opcode.VDPPS + { OpcodeByte = 64u + Opcode = Opcode.VDPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24989,7 +27407,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDPPS + { OpcodeByte = 64u + Opcode = Opcode.VDPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -25000,7 +27419,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 65(0x41) - { Opcode = Opcode.VDPPD + { OpcodeByte = 65u + Opcode = Opcode.VDPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25011,7 +27431,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 66(0x42) - { Opcode = Opcode.VMPSADBW + { OpcodeByte = 66u + Opcode = Opcode.VMPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25020,7 +27441,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMPSADBW + { OpcodeByte = 66u + Opcode = Opcode.VMPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -25033,7 +27455,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 67(0x43) |] [| // index 68(0x44) - { Opcode = Opcode.VPCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25042,7 +27465,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -25055,7 +27479,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 69(0x45) |] [| // index 70(0x46) - { Opcode = Opcode.VPERM2I128 + { OpcodeByte = 70u + Opcode = Opcode.VPERM2I128 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -25072,7 +27497,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 73(0x49) |] [| // index 74(0x4A) - { Opcode = Opcode.VBLENDVPS + { OpcodeByte = 74u + Opcode = Opcode.VBLENDVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25081,7 +27507,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDVPS + { OpcodeByte = 74u + Opcode = Opcode.VBLENDVPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -25092,7 +27519,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 75(0x4B) - { Opcode = Opcode.VBLENDVPD + { OpcodeByte = 75u + Opcode = Opcode.VBLENDVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25101,7 +27529,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDVPD + { OpcodeByte = 75u + Opcode = Opcode.VBLENDVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -25112,7 +27541,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 76(0x4C) - { Opcode = Opcode.VPBLENDVB + { OpcodeByte = 76u + Opcode = Opcode.VPBLENDVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25121,7 +27551,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RVMR Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDVB + { OpcodeByte = 76u + Opcode = Opcode.VPBLENDVB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -25170,7 +27601,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 95(0x5F) |] [| // index 96(0x60) - { Opcode = Opcode.VPCMPESTRM + { OpcodeByte = 96u + Opcode = Opcode.VPCMPESTRM PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -25181,7 +27613,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 97(0x61) - { Opcode = Opcode.VPCMPESTRI + { OpcodeByte = 97u + Opcode = Opcode.VPCMPESTRI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 @@ -25192,7 +27625,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 98(0x62) - { Opcode = Opcode.VPCMPISTRM + { OpcodeByte = 98u + Opcode = Opcode.VPCMPISTRM PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25203,7 +27637,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.VPCMPISTRI + { OpcodeByte = 99u + Opcode = Opcode.VPCMPISTRI PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25426,7 +27861,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 205(0xCD) |] [| // index 206(0xCE) - { Opcode = Opcode.VGF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25435,7 +27871,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -25446,7 +27883,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 207(0xCF) - { Opcode = Opcode.VGF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25455,7 +27893,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -25494,7 +27933,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 221(0xDD) |] [| // index 222(0xDE) - { Opcode = Opcode.InvalOP + { OpcodeByte = 222u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25505,7 +27945,8 @@ let (vexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -25548,7 +27989,8 @@ let (vexThree3A: InstructionCore[][]) = [| // index 239(0xEF) |] [| // index 240(0xF0) - { Opcode = Opcode.RORX + { OpcodeByte = 240u + Opcode = Opcode.RORX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25557,7 +27999,8 @@ let (vexThree3A: InstructionCore[][]) = OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.RORX + { OpcodeByte = 240u + Opcode = Opcode.RORX PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25634,108 +28077,120 @@ let (evexTwo: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.VMOVSD + { OpcodeByte = 16u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSD + { OpcodeByte = 16u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Mem Sz64 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 16u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 16u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Mem Sz32 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Mem Sz32 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 16u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 17(0x11) - { Opcode = Opcode.VMOVSD + { OpcodeByte = 17u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSD + { OpcodeByte = 17u + Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25744,16 +28199,18 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 17u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSS + { OpcodeByte = 17u + Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25762,7 +28219,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25771,7 +28229,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -25780,7 +28239,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPD + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -25789,7 +28249,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25798,7 +28259,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -25807,7 +28269,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVUPS + { OpcodeByte = 17u + Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -25818,34 +28281,38 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 18(0x12) - { Opcode = Opcode.VMOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHLPS + { OpcodeByte = 18u + Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25854,7 +28321,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPD + { OpcodeByte = 18u + Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25863,7 +28331,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPS + { OpcodeByte = 18u + Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25872,36 +28341,40 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSLDUP + { OpcodeByte = 18u + Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 19(0x13) - { Opcode = Opcode.VMOVLPD + { OpcodeByte = 19u + Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -25910,7 +28383,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLPS + { OpcodeByte = 19u + Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -25921,119 +28395,132 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 20(0x14) - { Opcode = Opcode.VUNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPD + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKLPS + { OpcodeByte = 20u + Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.VUNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPD + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUNPCKHPS + { OpcodeByte = 21u + Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.VMOVHPD + { OpcodeByte = 22u + Opcode = Opcode.VMOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26042,7 +28529,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHPS + { OpcodeByte = 22u + Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26051,7 +28539,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVLHPS + { OpcodeByte = 22u + Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26060,36 +28549,40 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVSHDUP + { OpcodeByte = 22u + Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.VMOVHPD + { OpcodeByte = 23u + Opcode = Opcode.VMOVHPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26098,7 +28591,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVHPS + { OpcodeByte = 23u + Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26141,63 +28635,70 @@ let (evexTwo: InstructionCore[][]) = [| // index 39(0x27) |] [| // index 40(0x28) - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 40u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26206,7 +28707,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -26215,7 +28717,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPD + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -26224,7 +28727,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26233,7 +28737,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -26242,7 +28747,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVAPS + { OpcodeByte = 41u + Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -26253,7 +28759,8 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.VCVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26262,7 +28769,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SD + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26271,7 +28779,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26280,7 +28789,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSI2SS + { OpcodeByte = 42u + Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26291,7 +28801,8 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.VMOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -26300,7 +28811,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -26309,7 +28821,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPD + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -26318,7 +28831,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -26327,7 +28841,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -26336,7 +28851,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTPS + { OpcodeByte = 43u + Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -26347,117 +28863,129 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 44(0x2C) - { Opcode = Opcode.VCVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSD2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2SI + { OpcodeByte = 44u + Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 45(0x2D) - { Opcode = Opcode.VCVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SI + { OpcodeByte = 45u + Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 46(0x2E) - { Opcode = Opcode.VUCOMISD + { OpcodeByte = 46u + Opcode = Opcode.VUCOMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VUCOMISS + { OpcodeByte = 46u + Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 47(0x2F) - { Opcode = Opcode.VCOMISD + { OpcodeByte = 47u + Opcode = Opcode.VCOMISD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMISS + { OpcodeByte = 47u + Opcode = Opcode.VCOMISS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -26529,75 +29057,83 @@ let (evexTwo: InstructionCore[][]) = [| // index 80(0x50) |] [| // index 81(0x51) - { Opcode = Opcode.VSQRTPD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTPS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTSD + { OpcodeByte = 81u + Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSQRTSS + { OpcodeByte = 81u + Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -26607,975 +29143,1080 @@ let (evexTwo: InstructionCore[][]) = [| // index 83(0x53) |] [| // index 84(0x54) - { Opcode = Opcode.VANDPD + { OpcodeByte = 84u + Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPD + { OpcodeByte = 84u + Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPD + { OpcodeByte = 84u + Opcode = Opcode.VANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPS + { OpcodeByte = 84u + Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPS + { OpcodeByte = 84u + Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDPS + { OpcodeByte = 84u + Opcode = Opcode.VANDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 85(0x55) - { Opcode = Opcode.VANDNPD + { OpcodeByte = 85u + Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPD + { OpcodeByte = 85u + Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPD + { OpcodeByte = 85u + Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPS + { OpcodeByte = 85u + Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPS + { OpcodeByte = 85u + Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VANDNPS + { OpcodeByte = 85u + Opcode = Opcode.VANDNPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 86(0x56) - { Opcode = Opcode.VORPD + { OpcodeByte = 86u + Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPD + { OpcodeByte = 86u + Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPD + { OpcodeByte = 86u + Opcode = Opcode.VORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPS + { OpcodeByte = 86u + Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPS + { OpcodeByte = 86u + Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VORPS + { OpcodeByte = 86u + Opcode = Opcode.VORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 87(0x57) - { Opcode = Opcode.VXORPD + { OpcodeByte = 87u + Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPD + { OpcodeByte = 87u + Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPD + { OpcodeByte = 87u + Opcode = Opcode.VXORPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPS + { OpcodeByte = 87u + Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPS + { OpcodeByte = 87u + Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VXORPS + { OpcodeByte = 87u + Opcode = Opcode.VXORPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 88(0x58) - { Opcode = Opcode.VADDPD + { OpcodeByte = 88u + Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPD + { OpcodeByte = 88u + Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPD + { OpcodeByte = 88u + Opcode = Opcode.VADDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPS + { OpcodeByte = 88u + Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPS + { OpcodeByte = 88u + Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDPS + { OpcodeByte = 88u + Opcode = Opcode.VADDPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSD + { OpcodeByte = 88u + Opcode = Opcode.VADDSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VADDSS + { OpcodeByte = 88u + Opcode = Opcode.VADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 89(0x59) - { Opcode = Opcode.VMULPD + { OpcodeByte = 89u + Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPD + { OpcodeByte = 89u + Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPD + { OpcodeByte = 89u + Opcode = Opcode.VMULPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPS + { OpcodeByte = 89u + Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPS + { OpcodeByte = 89u + Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULPS + { OpcodeByte = 89u + Opcode = Opcode.VMULPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULSD + { OpcodeByte = 89u + Opcode = Opcode.VMULSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMULSS + { OpcodeByte = 89u + Opcode = Opcode.VMULSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 90(0x5A) - { Opcode = Opcode.VCVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2PS + { OpcodeByte = 90u + Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PD + { OpcodeByte = 90u + Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2SS + { OpcodeByte = 90u + Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2SD + { OpcodeByte = 90u + Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 91(0x5B) - { Opcode = Opcode.VCVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2DQ + { OpcodeByte = 91u + Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PS + { OpcodeByte = 91u + Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 92(0x5C) - { Opcode = Opcode.VSUBPD + { OpcodeByte = 92u + Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPD + { OpcodeByte = 92u + Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPD + { OpcodeByte = 92u + Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPS + { OpcodeByte = 92u + Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPS + { OpcodeByte = 92u + Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBPS + { OpcodeByte = 92u + Opcode = Opcode.VSUBPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBSD + { OpcodeByte = 92u + Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSUBSS + { OpcodeByte = 92u + Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 93(0x5D) - { Opcode = Opcode.VMINPD + { OpcodeByte = 93u + Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPD + { OpcodeByte = 93u + Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPD + { OpcodeByte = 93u + Opcode = Opcode.VMINPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPS + { OpcodeByte = 93u + Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPS + { OpcodeByte = 93u + Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINPS + { OpcodeByte = 93u + Opcode = Opcode.VMINPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINSD + { OpcodeByte = 93u + Opcode = Opcode.VMINSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMINSS + { OpcodeByte = 93u + Opcode = Opcode.VMINSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 94(0x5E) - { Opcode = Opcode.VDIVPD + { OpcodeByte = 94u + Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPD + { OpcodeByte = 94u + Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPD + { OpcodeByte = 94u + Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPS + { OpcodeByte = 94u + Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPS + { OpcodeByte = 94u + Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVPS + { OpcodeByte = 94u + Opcode = Opcode.VDIVPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVSD + { OpcodeByte = 94u + Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDIVSS + { OpcodeByte = 94u + Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 95(0x5F) - { Opcode = Opcode.VMAXPD + { OpcodeByte = 95u + Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPD + { OpcodeByte = 95u + Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPD + { OpcodeByte = 95u + Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPS + { OpcodeByte = 95u + Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPS + { OpcodeByte = 95u + Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXPS + { OpcodeByte = 95u + Opcode = Opcode.VMAXPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXSD + { OpcodeByte = 95u + Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMAXSS + { OpcodeByte = 95u + Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 96(0x60) - { Opcode = Opcode.VPUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLBW + { OpcodeByte = 96u + Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 97(0x61) - { Opcode = Opcode.VPUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLWD + { OpcodeByte = 97u + Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 98(0x62) - { Opcode = Opcode.VPUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLDQ + { OpcodeByte = 98u + Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.VPACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSWB + { OpcodeByte = 99u + Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 100(0x64) - { Opcode = Opcode.VPCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -27584,7 +30225,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -27593,7 +30235,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTB + { OpcodeByte = 100u + Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -27604,7 +30247,8 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 101(0x65) - { Opcode = Opcode.VPCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -27613,7 +30257,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -27622,7 +30267,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTW + { OpcodeByte = 101u + Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -27633,16 +30279,18 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 102(0x66) - { Opcode = Opcode.VPCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27651,7 +30299,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTD + { OpcodeByte = 102u + Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -27662,210 +30311,232 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 103(0x67) - { Opcode = Opcode.VPACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSWB + { OpcodeByte = 103u + Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 104(0x68) - { Opcode = Opcode.VPUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHBW + { OpcodeByte = 104u + Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 105(0x69) - { Opcode = Opcode.VPUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHWD + { OpcodeByte = 105u + Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 106(0x6A) - { Opcode = Opcode.VPUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHDQ + { OpcodeByte = 106u + Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 107(0x6B) - { Opcode = Opcode.VPACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKSSDW + { OpcodeByte = 107u + Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 108(0x6C) - { Opcode = Opcode.VPUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKLQDQ + { OpcodeByte = 108u + Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 109(0x6D) - { Opcode = Opcode.VPUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPUNPCKHQDQ + { OpcodeByte = 109u + Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 110(0x6E) - { Opcode = Opcode.VMOVD + { OpcodeByte = 110u + Opcode = Opcode.VMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27874,7 +30545,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 110u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -27885,555 +30557,616 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 111(0x6F) - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 111u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 112(0x70) - { Opcode = Opcode.VPSHUFD + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFD + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFD + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFHW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFLW + { OpcodeByte = 112u + Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 113(0x71) - { Opcode = Opcode.VPSLLW + { OpcodeByte = 113u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 113u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 113u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 113u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 113u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 113u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 113u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 113u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 113u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 114(0x72) - { Opcode = Opcode.VPSLLD + { OpcodeByte = 114u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 114u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 114u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 114u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 114u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 114u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 114u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 114u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 114u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 114u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 114u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 114u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLD + { OpcodeByte = 114u + Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLQ + { OpcodeByte = 114u + Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLD + { OpcodeByte = 114u + Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLQ + { OpcodeByte = 114u + Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLD + { OpcodeByte = 114u + Opcode = Opcode.VPROLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLQ + { OpcodeByte = 114u + Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORD + { OpcodeByte = 114u + Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORQ + { OpcodeByte = 114u + Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORD + { OpcodeByte = 114u + Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORQ + { OpcodeByte = 114u + Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORD + { OpcodeByte = 114u + Opcode = Opcode.VPRORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORQ + { OpcodeByte = 114u + Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 115(0x73) - { Opcode = Opcode.VPSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -28442,7 +31175,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -28451,7 +31185,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -28460,34 +31195,38 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -28496,7 +31235,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -28505,7 +31245,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -28514,36 +31255,40 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 115u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 116(0x74) - { Opcode = Opcode.VPCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -28552,7 +31297,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -28561,7 +31307,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQB + { OpcodeByte = 116u + Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -28572,7 +31319,8 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 117(0x75) - { Opcode = Opcode.VPCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -28581,7 +31329,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -28590,7 +31339,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQW + { OpcodeByte = 117u + Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -28601,16 +31351,18 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 118(0x76) - { Opcode = Opcode.VPCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -28619,7 +31371,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQD + { OpcodeByte = 118u + Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -28632,517 +31385,574 @@ let (evexTwo: InstructionCore[][]) = [| // index 119(0x77) |] [| // index 120(0x78) - { Opcode = Opcode.VCVTTPD2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UDQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2UQQ + { OpcodeByte = 120u + Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSD2USI + { OpcodeByte = 120u + Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSD2USI + { OpcodeByte = 120u + Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2USI + { OpcodeByte = 120u + Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTSS2USI + { OpcodeByte = 120u + Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 121(0x79) - { Opcode = Opcode.VCVTPD2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UDQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2UQQ + { OpcodeByte = 121u + Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2USI + { OpcodeByte = 121u + Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSD2USI + { OpcodeByte = 121u + Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2USI + { OpcodeByte = 121u + Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTSS2USI + { OpcodeByte = 121u + Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Reg Sz128 |] + Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 122(0x7A) - { Opcode = Opcode.VCVTTPD2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPS2QQ + { OpcodeByte = 122u + Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUDQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PD + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUQQ2PS + { OpcodeByte = 122u + Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 123(0x7B) - { Opcode = Opcode.VCVTPD2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2QQ + { OpcodeByte = 123u + Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUSI2SD + { OpcodeByte = 123u + Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29151,7 +31961,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUSI2SD + { OpcodeByte = 123u + Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29160,7 +31971,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUSI2SS + { OpcodeByte = 123u + Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29169,7 +31981,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTUSI2SS + { OpcodeByte = 123u + Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29184,7 +31997,8 @@ let (evexTwo: InstructionCore[][]) = [| // index 125(0x7D) |] [| // index 126(0x7E) - { Opcode = Opcode.VMOVD + { OpcodeByte = 126u + Opcode = Opcode.VMOVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29193,7 +32007,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 126u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29202,18 +32017,20 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVQ + { OpcodeByte = 126u + Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 127(0x7F) - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29222,7 +32039,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29231,7 +32049,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -29240,7 +32059,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29249,7 +32069,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -29258,7 +32079,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQA64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -29267,7 +32089,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29276,7 +32099,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29285,7 +32109,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU8 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -29294,7 +32119,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29303,7 +32129,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -29312,7 +32139,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU16 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -29321,7 +32149,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29330,7 +32159,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29339,7 +32169,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU32 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -29348,7 +32179,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -29357,7 +32189,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -29366,7 +32199,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVDQU64 + { OpcodeByte = 127u + Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -29509,16 +32343,18 @@ let (evexTwo: InstructionCore[][]) = [| // index 193(0xC1) |] [| // index 194(0xC2) - { Opcode = Opcode.VCMPPD + { OpcodeByte = 194u + Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPD + { OpcodeByte = 194u + Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -29527,7 +32363,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPD + { OpcodeByte = 194u + Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -29536,16 +32373,18 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPS + { OpcodeByte = 194u + Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPS + { OpcodeByte = 194u + Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29554,7 +32393,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPPS + { OpcodeByte = 194u + Opcode = Opcode.VCMPPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -29563,21 +32403,23 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPSD + { OpcodeByte = 194u + Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCMPSS + { OpcodeByte = 194u + Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29585,7 +32427,8 @@ let (evexTwo: InstructionCore[][]) = [| // index 195(0xC3) |] [| // index 196(0xC4) - { Opcode = Opcode.VPINSRW + { OpcodeByte = 196u + Opcode = Opcode.VPINSRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -29596,7 +32439,8 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 197(0xC5) - { Opcode = Opcode.VPEXTRW + { OpcodeByte = 197u + Opcode = Opcode.VPEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -29607,57 +32451,63 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 198(0xC6) - { Opcode = Opcode.VSHUFPD + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPD + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPD + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPS + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPS + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFPS + { OpcodeByte = 198u + Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29683,157 +32533,173 @@ let (evexTwo: InstructionCore[][]) = [| // index 208(0xD0) |] [| // index 209(0xD1) - { Opcode = Opcode.VPSRLW + { OpcodeByte = 209u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 209u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLW + { OpcodeByte = 209u + Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 210(0xD2) - { Opcode = Opcode.VPSRLD + { OpcodeByte = 210u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 210u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLD + { OpcodeByte = 210u + Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 211(0xD3) - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 211u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 211u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLQ + { OpcodeByte = 211u + Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 212(0xD4) - { Opcode = Opcode.VPADDQ + { OpcodeByte = 212u + Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDQ + { OpcodeByte = 212u + Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDQ + { OpcodeByte = 212u + Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 213(0xD5) - { Opcode = Opcode.VPMULLW + { OpcodeByte = 213u + Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLW + { OpcodeByte = 213u + Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLW + { OpcodeByte = 213u + Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 214(0xD6) - { Opcode = Opcode.VMOVQ + { OpcodeByte = 214u + Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29841,604 +32707,668 @@ let (evexTwo: InstructionCore[][]) = [| // index 215(0xD7) |] [| // index 216(0xD8) - { Opcode = Opcode.VPSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSB + { OpcodeByte = 216u + Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 217(0xD9) - { Opcode = Opcode.VPSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBUSW + { OpcodeByte = 217u + Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 218(0xDA) - { Opcode = Opcode.VPMINUB + { OpcodeByte = 218u + Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUB + { OpcodeByte = 218u + Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUB + { OpcodeByte = 218u + Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 219(0xDB) - { Opcode = Opcode.VPANDD + { OpcodeByte = 219u + Opcode = Opcode.VPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDD + { OpcodeByte = 219u + Opcode = Opcode.VPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDD + { OpcodeByte = 219u + Opcode = Opcode.VPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDQ + { OpcodeByte = 219u + Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDQ + { OpcodeByte = 219u + Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPANDQ + { OpcodeByte = 219u + Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 220(0xDC) - { Opcode = Opcode.VPADDUSB + { OpcodeByte = 220u + Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSB + { OpcodeByte = 220u + Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSB + { OpcodeByte = 220u + Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.VPADDUSW + { OpcodeByte = 221u + Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSW + { OpcodeByte = 221u + Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDUSW + { OpcodeByte = 221u + Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.VPMAXUB + { OpcodeByte = 222u + Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUB + { OpcodeByte = 222u + Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUB + { OpcodeByte = 222u + Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 223u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 224(0xE0) - { Opcode = Opcode.VPAVGB + { OpcodeByte = 224u + Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGB + { OpcodeByte = 224u + Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGB + { OpcodeByte = 224u + Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 225(0xE1) - { Opcode = Opcode.VPSRAW + { OpcodeByte = 225u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 225u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAW + { OpcodeByte = 225u + Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 226(0xE2) - { Opcode = Opcode.VPSRAD + { OpcodeByte = 226u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 226u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAD + { OpcodeByte = 226u + Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 226u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 226u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAQ + { OpcodeByte = 226u + Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 227(0xE3) - { Opcode = Opcode.VPAVGW + { OpcodeByte = 227u + Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGW + { OpcodeByte = 227u + Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPAVGW + { OpcodeByte = 227u + Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 228(0xE4) - { Opcode = Opcode.VPMULHUW + { OpcodeByte = 228u + Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHUW + { OpcodeByte = 228u + Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHUW + { OpcodeByte = 228u + Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 229(0xE5) - { Opcode = Opcode.VPMULHW + { OpcodeByte = 229u + Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHW + { OpcodeByte = 229u + Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHW + { OpcodeByte = 229u + Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 230(0xE6) - { Opcode = Opcode.VCVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTDQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTTPD2DQ + { OpcodeByte = 230u + Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTQQ2PD + { OpcodeByte = 230u + Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 231(0xE7) - { Opcode = Opcode.VMOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30447,7 +33377,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -30456,7 +33387,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQ + { OpcodeByte = 231u + Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -30467,287 +33399,317 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 232(0xE8) - { Opcode = Opcode.VPSUBSB + { OpcodeByte = 232u + Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSB + { OpcodeByte = 232u + Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSB + { OpcodeByte = 232u + Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 233(0xE9) - { Opcode = Opcode.VPSUBSW + { OpcodeByte = 233u + Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSW + { OpcodeByte = 233u + Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBSW + { OpcodeByte = 233u + Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 234(0xEA) - { Opcode = Opcode.VPMINSW + { OpcodeByte = 234u + Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSW + { OpcodeByte = 234u + Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSW + { OpcodeByte = 234u + Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 235(0xEB) - { Opcode = Opcode.VPORD + { OpcodeByte = 235u + Opcode = Opcode.VPORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPORD + { OpcodeByte = 235u + Opcode = Opcode.VPORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPORD + { OpcodeByte = 235u + Opcode = Opcode.VPORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPORQ + { OpcodeByte = 235u + Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPORQ + { OpcodeByte = 235u + Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPORQ + { OpcodeByte = 235u + Opcode = Opcode.VPORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 236(0xEC) - { Opcode = Opcode.VPADDSB + { OpcodeByte = 236u + Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSB + { OpcodeByte = 236u + Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSB + { OpcodeByte = 236u + Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 237(0xED) - { Opcode = Opcode.VPADDSW + { OpcodeByte = 237u + Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSW + { OpcodeByte = 237u + Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDSW + { OpcodeByte = 237u + Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 238(0xEE) - { Opcode = Opcode.VPMAXSW + { OpcodeByte = 238u + Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSW + { OpcodeByte = 238u + Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSW + { OpcodeByte = 238u + Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 239(0xEF) - { Opcode = Opcode.VPXORD + { OpcodeByte = 239u + Opcode = Opcode.VPXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXORD + { OpcodeByte = 239u + Opcode = Opcode.VPXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXORD + { OpcodeByte = 239u + Opcode = Opcode.VPXORD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXORQ + { OpcodeByte = 239u + Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXORQ + { OpcodeByte = 239u + Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPXORQ + { OpcodeByte = 239u + Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30755,152 +33717,168 @@ let (evexTwo: InstructionCore[][]) = [| // index 240(0xF0) |] [| // index 241(0xF1) - { Opcode = Opcode.VPSLLW + { OpcodeByte = 241u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 241u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLW + { OpcodeByte = 241u + Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 242(0xF2) - { Opcode = Opcode.VPSLLD + { OpcodeByte = 242u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 242u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLD + { OpcodeByte = 242u + Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 243(0xF3) - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 243u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 243u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLQ + { OpcodeByte = 243u + Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 244(0xF4) - { Opcode = Opcode.VPMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULUDQ + { OpcodeByte = 244u + Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 245(0xF5) - { Opcode = Opcode.VPMADDWD + { OpcodeByte = 245u + Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDWD + { OpcodeByte = 245u + Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDWD + { OpcodeByte = 245u + Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 246(0xF6) - { Opcode = Opcode.VPSADBW + { OpcodeByte = 246u + Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -30909,7 +33887,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSADBW + { OpcodeByte = 246u + Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -30918,7 +33897,8 @@ let (evexTwo: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSADBW + { OpcodeByte = 246u + Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -30931,204 +33911,225 @@ let (evexTwo: InstructionCore[][]) = [| // index 247(0xF7) |] [| // index 248(0xF8) - { Opcode = Opcode.VPSUBB + { OpcodeByte = 248u + Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBB + { OpcodeByte = 248u + Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBB + { OpcodeByte = 248u + Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 249(0xF9) - { Opcode = Opcode.VPSUBW + { OpcodeByte = 249u + Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBW + { OpcodeByte = 249u + Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBW + { OpcodeByte = 249u + Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 250(0xFA) - { Opcode = Opcode.VPSUBD + { OpcodeByte = 250u + Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBD + { OpcodeByte = 250u + Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBD + { OpcodeByte = 250u + Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 251(0xFB) - { Opcode = Opcode.VPSUBQ + { OpcodeByte = 251u + Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBQ + { OpcodeByte = 251u + Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSUBQ + { OpcodeByte = 251u + Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 252(0xFC) - { Opcode = Opcode.VPADDB + { OpcodeByte = 252u + Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDB + { OpcodeByte = 252u + Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDB + { OpcodeByte = 252u + Opcode = Opcode.VPADDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 253(0xFD) - { Opcode = Opcode.VPADDW + { OpcodeByte = 253u + Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDW + { OpcodeByte = 253u + Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDW + { OpcodeByte = 253u + Opcode = Opcode.VPADDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 254(0xFE) - { Opcode = Opcode.VPADDD + { OpcodeByte = 254u + Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDD + { OpcodeByte = 254u + Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPADDD + { OpcodeByte = 254u + Opcode = Opcode.VPADDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31140,30 +34141,33 @@ let (evexTwo: InstructionCore[][]) = let (evexThree38: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.VPSHUFB + { OpcodeByte = 0u + Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFB + { OpcodeByte = 0u + Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFB + { OpcodeByte = 0u + Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31175,30 +34179,33 @@ let (evexThree38: InstructionCore[][]) = [| // index 3(0x03) |] [| // index 4(0x04) - { Opcode = Opcode.VPMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADDUBSW + { OpcodeByte = 4u + Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31216,88 +34223,97 @@ let (evexThree38: InstructionCore[][]) = [| // index 10(0x0A) |] [| // index 11(0x0B) - { Opcode = Opcode.VPMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULHRSW + { OpcodeByte = 11u + Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 12(0x0C) - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 12u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 12u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 12u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 13(0x0D) - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 13u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 13u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 13u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31307,16 +34323,18 @@ let (evexThree38: InstructionCore[][]) = [| // index 15(0x0F) |] [| // index 16(0x10) - { Opcode = Opcode.VPMOVUSWB + { OpcodeByte = 16u + Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSWB + { OpcodeByte = 16u + Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -31325,7 +34343,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSWB + { OpcodeByte = 16u + Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -31334,54 +34353,60 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVW + { OpcodeByte = 16u + Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVW + { OpcodeByte = 16u + Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVW + { OpcodeByte = 16u + Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 17(0x11) - { Opcode = Opcode.VPMOVUSDB + { OpcodeByte = 17u + Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSDB + { OpcodeByte = 17u + Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSDB + { OpcodeByte = 17u + Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -31390,128 +34415,142 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVW + { OpcodeByte = 17u + Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVW + { OpcodeByte = 17u + Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVW + { OpcodeByte = 17u + Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 18(0x12) - { Opcode = Opcode.VPMOVUSQB + { OpcodeByte = 18u + Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQB + { OpcodeByte = 18u + Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQB + { OpcodeByte = 18u + Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVW + { OpcodeByte = 18u + Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVW + { OpcodeByte = 18u + Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVW + { OpcodeByte = 18u + Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 19(0x13) - { Opcode = Opcode.VCVTPH2PS + { OpcodeByte = 19u + Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPH2PS + { OpcodeByte = 19u + Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPH2PS + { OpcodeByte = 19u + Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSDW + { OpcodeByte = 19u + Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSDW + { OpcodeByte = 19u + Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -31520,7 +34559,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSDW + { OpcodeByte = 19u + Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -31531,25 +34571,28 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 20(0x14) - { Opcode = Opcode.VPMOVUSQW + { OpcodeByte = 20u + Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQW + { OpcodeByte = 20u + Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQW + { OpcodeByte = 20u + Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -31558,72 +34601,80 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVD + { OpcodeByte = 20u + Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVQ + { OpcodeByte = 20u + Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVD + { OpcodeByte = 20u + Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVQ + { OpcodeByte = 20u + Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVD + { OpcodeByte = 20u + Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPRORVQ + { OpcodeByte = 20u + Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.VPMOVUSQD + { OpcodeByte = 21u + Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQD + { OpcodeByte = 21u + Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -31632,7 +34683,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVUSQD + { OpcodeByte = 21u + Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -31641,95 +34693,105 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVD + { OpcodeByte = 21u + Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVQ + { OpcodeByte = 21u + Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVD + { OpcodeByte = 21u + Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVQ + { OpcodeByte = 21u + Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVD + { OpcodeByte = 21u + Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPROLVQ + { OpcodeByte = 21u + Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.VPERMPD + { OpcodeByte = 22u + Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMPD + { OpcodeByte = 22u + Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMPS + { OpcodeByte = 22u + Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMPS + { OpcodeByte = 22u + Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31737,284 +34799,314 @@ let (evexThree38: InstructionCore[][]) = [| // index 23(0x17) |] [| // index 24(0x18) - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSS + { OpcodeByte = 24u + Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 25(0x19) - { Opcode = Opcode.VBROADCASTSD + { OpcodeByte = 25u + Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTSD + { OpcodeByte = 25u + Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 25u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 25u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 26(0x1A) - { Opcode = Opcode.InvalOP + { OpcodeByte = 26u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 26u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 26u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 26u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 27(0x1B) - { Opcode = Opcode.InvalOP + { OpcodeByte = 27u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M256" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 27u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M256" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 28(0x1C) - { Opcode = Opcode.VPABSB + { OpcodeByte = 28u + Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSB + { OpcodeByte = 28u + Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSB + { OpcodeByte = 28u + Opcode = Opcode.VPABSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 29(0x1D) - { Opcode = Opcode.VPABSW + { OpcodeByte = 29u + Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSW + { OpcodeByte = 29u + Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSW + { OpcodeByte = 29u + Opcode = Opcode.VPABSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 30(0x1E) - { Opcode = Opcode.VPABSD + { OpcodeByte = 30u + Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSD + { OpcodeByte = 30u + Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSD + { OpcodeByte = 30u + Opcode = Opcode.VPABSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 31(0x1F) - { Opcode = Opcode.VPABSQ + { OpcodeByte = 31u + Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSQ + { OpcodeByte = 31u + Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPABSQ + { OpcodeByte = 31u + Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 32(0x20) - { Opcode = Opcode.VPMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBW + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSWB + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSWB + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32023,7 +35115,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSWB + { OpcodeByte = 32u + Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32034,52 +35127,58 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.VPMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBD + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDB + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDB + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDB + { OpcodeByte = 33u + Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32090,99 +35189,110 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.VPMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXBQ + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQB + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQB + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQB + { OpcodeByte = 34u + Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 35(0x23) - { Opcode = Opcode.VPMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWD + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDW + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDW + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32191,7 +35301,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSDW + { OpcodeByte = 35u + Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32202,52 +35313,58 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 36(0x24) - { Opcode = Opcode.VPMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXWQ + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQW + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQW + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQW + { OpcodeByte = 36u + Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32258,43 +35375,48 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 37(0x25) - { Opcode = Opcode.VPMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSXDQ + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQD + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQD + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32303,7 +35425,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVSQD + { OpcodeByte = 37u + Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32314,7 +35437,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 38(0x26) - { Opcode = Opcode.VPTESTMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32323,7 +35447,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32332,7 +35457,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32341,7 +35467,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -32350,7 +35477,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32359,7 +35487,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32368,7 +35497,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32377,7 +35507,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32386,7 +35517,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMB + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32395,7 +35527,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -32404,7 +35537,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32413,7 +35547,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMW + { OpcodeByte = 38u + Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32424,16 +35559,18 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 39(0x27) - { Opcode = Opcode.VPTESTMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32442,7 +35579,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32451,16 +35589,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32469,7 +35609,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32478,16 +35619,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32496,7 +35639,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMD + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32505,16 +35649,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32523,7 +35669,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTESTNMQ + { OpcodeByte = 39u + Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32534,34 +35681,38 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 40(0x28) - { Opcode = Opcode.VPMULDQ + { OpcodeByte = 40u + Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULDQ + { OpcodeByte = 40u + Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULDQ + { OpcodeByte = 40u + Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2B + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32570,7 +35721,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2B + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32579,7 +35731,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2B + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32588,7 +35741,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2W + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -32597,7 +35751,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2W + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32606,7 +35761,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2W + { OpcodeByte = 40u + Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32617,16 +35773,18 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 41(0x29) - { Opcode = Opcode.VPCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32635,7 +35793,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPEQQ + { OpcodeByte = 41u + Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32644,7 +35803,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVB2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32653,7 +35813,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVB2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32662,7 +35823,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVB2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32671,7 +35833,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVW2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -32680,7 +35843,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVW2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32689,7 +35853,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVW2M + { OpcodeByte = 41u + Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32700,7 +35865,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 42(0x2A) - { Opcode = Opcode.VMOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32709,7 +35875,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32718,7 +35885,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VMOVNTDQA + { OpcodeByte = 42u + Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32727,7 +35895,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMB2Q + { OpcodeByte = 42u + Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -32736,7 +35905,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMB2Q + { OpcodeByte = 42u + Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -32745,7 +35915,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMB2Q + { OpcodeByte = 42u + Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -32756,106 +35927,117 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 43(0x2B) - { Opcode = Opcode.VPACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPACKUSDW + { OpcodeByte = 43u + Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 44(0x2C) - { Opcode = Opcode.VSCALEFPD + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFPD + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFPD + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFPS + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFPS + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFPS + { OpcodeByte = 44u + Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 45(0x2D) - { Opcode = Opcode.VSCALEFSD + { OpcodeByte = 45u + Opcode = Opcode.VSCALEFSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCALEFSS + { OpcodeByte = 45u + Opcode = Opcode.VSCALEFSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32865,43 +36047,48 @@ let (evexThree38: InstructionCore[][]) = [| // index 47(0x2F) |] [| // index 48(0x30) - { Opcode = Opcode.VPMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBW + { OpcodeByte = 48u + Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVWB + { OpcodeByte = 48u + Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVWB + { OpcodeByte = 48u + Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -32910,7 +36097,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVWB + { OpcodeByte = 48u + Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32921,52 +36109,58 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 49(0x31) - { Opcode = Opcode.VPMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBD + { OpcodeByte = 49u + Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDB + { OpcodeByte = 49u + Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDB + { OpcodeByte = 49u + Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDB + { OpcodeByte = 49u + Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -32977,99 +36171,110 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 50(0x32) - { Opcode = Opcode.VPMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXBQ + { OpcodeByte = 50u + Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQB + { OpcodeByte = 50u + Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQB + { OpcodeByte = 50u + Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQB + { OpcodeByte = 50u + Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 51(0x33) - { Opcode = Opcode.VPMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWD + { OpcodeByte = 51u + Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDW + { OpcodeByte = 51u + Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDW + { OpcodeByte = 51u + Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -33078,7 +36283,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVDW + { OpcodeByte = 51u + Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33089,52 +36295,58 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 52(0x34) - { Opcode = Opcode.VPMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXWQ + { OpcodeByte = 52u + Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQW + { OpcodeByte = 52u + Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQW + { OpcodeByte = 52u + Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQW + { OpcodeByte = 52u + Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33145,34 +36357,38 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 53(0x35) - { Opcode = Opcode.VPMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVZXDQ + { OpcodeByte = 53u + Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQD + { OpcodeByte = 53u + Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -33181,7 +36397,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQD + { OpcodeByte = 53u + Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -33190,7 +36407,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQD + { OpcodeByte = 53u + Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33201,54 +36419,60 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 54(0x36) - { Opcode = Opcode.VPERMD + { OpcodeByte = 54u + Opcode = Opcode.VPERMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMD + { OpcodeByte = 54u + Opcode = Opcode.VPERMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMQ + { OpcodeByte = 54u + Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMQ + { OpcodeByte = 54u + Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 55(0x37) - { Opcode = Opcode.VPCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -33257,7 +36481,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPGTQ + { OpcodeByte = 55u + Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -33268,34 +36493,38 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 56(0x38) - { Opcode = Opcode.VPMINSB + { OpcodeByte = 56u + Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSB + { OpcodeByte = 56u + Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSB + { OpcodeByte = 56u + Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2D + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -33304,7 +36533,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2D + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -33313,7 +36543,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2D + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33322,7 +36553,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2Q + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -33331,7 +36563,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2Q + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -33340,7 +36573,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVM2Q + { OpcodeByte = 56u + Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -33351,61 +36585,68 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 57(0x39) - { Opcode = Opcode.VPMINSD + { OpcodeByte = 57u + Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSD + { OpcodeByte = 57u + Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSD + { OpcodeByte = 57u + Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSQ + { OpcodeByte = 57u + Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSQ + { OpcodeByte = 57u + Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINSQ + { OpcodeByte = 57u + Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVD2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -33414,7 +36655,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVD2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -33423,7 +36665,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVD2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33432,7 +36675,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQ2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -33441,7 +36685,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQ2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -33450,7 +36695,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMOVQ2M + { OpcodeByte = 57u + Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -33461,34 +36707,38 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 58(0x3A) - { Opcode = Opcode.VPMINUW + { OpcodeByte = 58u + Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUW + { OpcodeByte = 58u + Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUW + { OpcodeByte = 58u + Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMW2D + { OpcodeByte = 58u + Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -33497,7 +36747,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMW2D + { OpcodeByte = 58u + Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -33506,7 +36757,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTMW2D + { OpcodeByte = 58u + Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -33517,283 +36769,313 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 59(0x3B) - { Opcode = Opcode.VPMINUD + { OpcodeByte = 59u + Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUD + { OpcodeByte = 59u + Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUD + { OpcodeByte = 59u + Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUQ + { OpcodeByte = 59u + Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUQ + { OpcodeByte = 59u + Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMINUQ + { OpcodeByte = 59u + Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 60(0x3C) - { Opcode = Opcode.VPMAXSB + { OpcodeByte = 60u + Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSB + { OpcodeByte = 60u + Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSB + { OpcodeByte = 60u + Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 61(0x3D) - { Opcode = Opcode.VPMAXSD + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSD + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSD + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSQ + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSQ + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXSQ + { OpcodeByte = 61u + Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 62(0x3E) - { Opcode = Opcode.VPMAXUW + { OpcodeByte = 62u + Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUW + { OpcodeByte = 62u + Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUW + { OpcodeByte = 62u + Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 63(0x3F) - { Opcode = Opcode.VPMAXUD + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUD + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUD + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUQ + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUQ + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMAXUQ + { OpcodeByte = 63u + Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 64(0x40) - { Opcode = Opcode.VPMULLD + { OpcodeByte = 64u + Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLD + { OpcodeByte = 64u + Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLD + { OpcodeByte = 64u + Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLQ + { OpcodeByte = 64u + Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLQ + { OpcodeByte = 64u + Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULLQ + { OpcodeByte = 64u + Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33801,301 +37083,333 @@ let (evexThree38: InstructionCore[][]) = [| // index 65(0x41) |] [| // index 66(0x42) - { Opcode = Opcode.VGETEXPPD + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPPD + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPPD + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPPS + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPPS + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPPS + { OpcodeByte = 66u + Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 67(0x43) - { Opcode = Opcode.VGETEXPSD + { OpcodeByte = 67u + Opcode = Opcode.VGETEXPSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETEXPSS + { OpcodeByte = 67u + Opcode = Opcode.VGETEXPSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 68(0x44) - { Opcode = Opcode.VPLZCNTD + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPLZCNTD + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPLZCNTD + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPLZCNTQ + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPLZCNTQ + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPLZCNTQ + { OpcodeByte = 68u + Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 69(0x45) - { Opcode = Opcode.VPSRLVD + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVD + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVD + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVQ + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVQ + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRLVQ + { OpcodeByte = 69u + Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 70(0x46) - { Opcode = Opcode.VPSRAVD + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVD + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVD + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVQ + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVQ + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSRAVQ + { OpcodeByte = 70u + Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 71(0x47) - { Opcode = Opcode.VPSLLVD + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVD + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVD + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVQ + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVQ + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSLLVQ + { OpcodeByte = 71u + Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34109,426 +37423,471 @@ let (evexThree38: InstructionCore[][]) = [| // index 75(0x4B) |] [| // index 76(0x4C) - { Opcode = Opcode.VRCP14PD + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14PD + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14PD + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14PS + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14PS + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14PS + { OpcodeByte = 76u + Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 77(0x4D) - { Opcode = Opcode.VRCP14SD + { OpcodeByte = 77u + Opcode = Opcode.VRCP14SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP14SS + { OpcodeByte = 77u + Opcode = Opcode.VRCP14SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 78(0x4E) - { Opcode = Opcode.VRSQRT14PD + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14PD + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14PD + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14PS + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14PS + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14PS + { OpcodeByte = 78u + Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 79(0x4F) - { Opcode = Opcode.VRSQRT14SD + { OpcodeByte = 79u + Opcode = Opcode.VRSQRT14SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT14SS + { OpcodeByte = 79u + Opcode = Opcode.VRSQRT14SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 80(0x50) - { Opcode = Opcode.VPDPBUSD + { OpcodeByte = 80u + Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSD + { OpcodeByte = 80u + Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSD + { OpcodeByte = 80u + Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 81(0x51) - { Opcode = Opcode.VPDPBUSDS + { OpcodeByte = 81u + Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSDS + { OpcodeByte = 81u + Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPBUSDS + { OpcodeByte = 81u + Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 82(0x52) - { Opcode = Opcode.VDPBF16PS + { OpcodeByte = 82u + Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDPBF16PS + { OpcodeByte = 82u + Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDPBF16PS + { OpcodeByte = 82u + Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP4DPWSSD + { OpcodeByte = 82u + Opcode = Opcode.VP4DPWSSD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 83(0x53) - { Opcode = Opcode.VPDPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPDPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP4DPWSSDS + { OpcodeByte = 83u + Opcode = Opcode.VP4DPWSSDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 84(0x54) - { Opcode = Opcode.VPOPCNTB + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTB + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTB + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTW + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTW + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTW + { OpcodeByte = 84u + Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 85(0x55) - { Opcode = Opcode.VPOPCNTD + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTD + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTD + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTQ + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTQ + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPOPCNTQ + { OpcodeByte = 85u + Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34538,144 +37897,159 @@ let (evexThree38: InstructionCore[][]) = [| // index 87(0x57) |] [| // index 88(0x58) - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 88u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 88u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 88u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 89(0x59) - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 89u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 89u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 89u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI32X2 + { OpcodeByte = 89u + Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI32X2 + { OpcodeByte = 89u + Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI32X2 + { OpcodeByte = 89u + Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 90(0x5A) - { Opcode = Opcode.VBROADCASTI32X4 + { OpcodeByte = 90u + Opcode = Opcode.VBROADCASTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI32X4 + { OpcodeByte = 90u + Opcode = Opcode.VBROADCASTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI64X2 + { OpcodeByte = 90u + Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI64X2 + { OpcodeByte = 90u + Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 91(0x5B) - { Opcode = Opcode.VBROADCASTI32X8 + { OpcodeByte = 91u + Opcode = Opcode.VBROADCASTI32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M256" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBROADCASTI64X4 + { OpcodeByte = 91u + Opcode = Opcode.VBROADCASTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M256" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34693,117 +38067,130 @@ let (evexThree38: InstructionCore[][]) = [| // index 97(0x61) |] [| // index 98(0x62) - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M512" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M512" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDB + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M256" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M512" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M512" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDW + { OpcodeByte = 98u + Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 99(0x63) - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -34812,16 +38199,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -34830,16 +38219,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -34848,16 +38239,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSB + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -34866,16 +38259,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -34884,16 +38279,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -34902,180 +38299,199 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSW + { OpcodeByte = 99u + Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 100(0x64) - { Opcode = Opcode.VPBLENDMD + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMD + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMD + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMQ + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMQ + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMQ + { OpcodeByte = 100u + Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 101(0x65) - { Opcode = Opcode.VBLENDMPD + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDMPD + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDMPD + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDMPS + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDMPS + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VBLENDMPS + { OpcodeByte = 101u + Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 102(0x66) - { Opcode = Opcode.VPBLENDMB + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMB + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMB + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMW + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMW + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBLENDMW + { OpcodeByte = 102u + Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35083,16 +38499,18 @@ let (evexThree38: InstructionCore[][]) = [| // index 103(0x67) |] [| // index 104(0x68) - { Opcode = Opcode.VP2INTERSECTD + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP2INTERSECTD + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -35101,7 +38519,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP2INTERSECTD + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -35110,16 +38529,18 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP2INTERSECTQ + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP2INTERSECTQ + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -35128,7 +38549,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VP2INTERSECTQ + { OpcodeByte = 104u + Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -35153,225 +38575,249 @@ let (evexThree38: InstructionCore[][]) = [| // index 111(0x6F) |] [| // index 112(0x70) - { Opcode = Opcode.VPSHLDVW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 113(0x71) - { Opcode = Opcode.VPSHLDVD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDVQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 114(0x72) - { Opcode = Opcode.VCVTNE2PS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNE2PS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNE2PS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNEPS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNEPS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTNEPS2BF16 + { OpcodeByte = 114u + Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 115(0x73) - { Opcode = Opcode.VPSHRDVD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDVQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35379,509 +38825,563 @@ let (evexThree38: InstructionCore[][]) = [| // index 116(0x74) |] [| // index 117(0x75) - { Opcode = Opcode.VPERMI2B + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2B + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2B + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2W + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2W + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2W + { OpcodeByte = 117u + Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 118(0x76) - { Opcode = Opcode.VPERMI2D + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2D + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2D + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2Q + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2Q + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2Q + { OpcodeByte = 118u + Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 119(0x77) - { Opcode = Opcode.VPERMI2PS + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2PS + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2PS + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2PD + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2PD + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMI2PD + { OpcodeByte = 119u + Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 120(0x78) - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 120u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M8" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 120u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "XMM2/M8" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 120u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "XMM2/M8" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 121(0x79) - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 121u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 121u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 121u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz128 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 122(0x7A) - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 122u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "REG" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 122u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "REG" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTB + { OpcodeByte = 122u + Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "REG" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 123(0x7B) - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 123u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "REG" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 123u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "REG" |] + Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTW + { OpcodeByte = 123u + Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "REG" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "REG" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 124(0x7C) - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz32 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz32 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTD + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz32 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz64 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz64 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPBROADCASTQ + { OpcodeByte = 124u + Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz64 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 125(0x7D) - { Opcode = Opcode.VPERMT2B + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2B + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2B + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2W + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2W + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2W + { OpcodeByte = 125u + Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 126(0x7E) - { Opcode = Opcode.VPERMT2D + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2D + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2D + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2Q + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2Q + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2Q + { OpcodeByte = 126u + Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 127(0x7F) - { Opcode = Opcode.VPERMT2PS + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2PS + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2PS + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2PD + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2PD + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMT2PD + { OpcodeByte = 127u + Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35893,30 +39393,33 @@ let (evexThree38: InstructionCore[][]) = [| // index 130(0x82) |] [| // index 131(0x83) - { Opcode = Opcode.VPMULTISHIFTQB + { OpcodeByte = 131u + Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULTISHIFTQB + { OpcodeByte = 131u + Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMULTISHIFTQB + { OpcodeByte = 131u + Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35930,119 +39433,132 @@ let (evexThree38: InstructionCore[][]) = [| // index 135(0x87) |] [| // index 136(0x88) - { Opcode = Opcode.VEXPANDPD + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXPANDPD + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXPANDPD + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXPANDPS + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXPANDPS + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXPANDPS + { OpcodeByte = 136u + Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 137(0x89) - { Opcode = Opcode.VPEXPANDD + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDD + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDD + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDQ + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDQ + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXPANDQ + { OpcodeByte = 137u + Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 138(0x8A) - { Opcode = Opcode.VCOMPRESSPD + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -36051,7 +39567,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMPRESSPD + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -36060,7 +39577,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMPRESSPD + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -36069,7 +39587,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMPRESSPS + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -36078,7 +39597,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMPRESSPS + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -36087,7 +39607,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCOMPRESSPS + { OpcodeByte = 138u + Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -36098,7 +39619,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 139(0x8B) - { Opcode = Opcode.VPCOMPRESSD + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -36107,7 +39629,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSD + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -36116,7 +39639,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSD + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -36125,7 +39649,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSQ + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -36134,7 +39659,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSQ + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -36143,7 +39669,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCOMPRESSQ + { OpcodeByte = 139u + Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -36156,57 +39683,63 @@ let (evexThree38: InstructionCore[][]) = [| // index 140(0x8C) |] [| // index 141(0x8D) - { Opcode = Opcode.VPERMB + { OpcodeByte = 141u + Opcode = Opcode.VPERMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMB + { OpcodeByte = 141u + Opcode = Opcode.VPERMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMB + { OpcodeByte = 141u + Opcode = Opcode.VPERMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMW + { OpcodeByte = 141u + Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMW + { OpcodeByte = 141u + Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMW + { OpcodeByte = 141u + Opcode = Opcode.VPERMW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36214,7 +39747,8 @@ let (evexThree38: InstructionCore[][]) = [| // index 142(0x8E) |] [| // index 143(0x8F) - { Opcode = Opcode.VPSHUFBITQMB + { OpcodeByte = 143u + Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -36223,7 +39757,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFBITQMB + { OpcodeByte = 143u + Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -36232,7 +39767,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHUFBITQMB + { OpcodeByte = 143u + Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -36243,225 +39779,249 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 144(0x90) - { Opcode = Opcode.VPGATHERDD + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM32X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDD + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM32Y" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDD + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM32Z" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDQ + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM32X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDQ + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM32X" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERDQ + { OpcodeByte = 144u + Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM32Y" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 145(0x91) - { Opcode = Opcode.VPGATHERQD + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQD + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64Y" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQD + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM64Z" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQQ + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQQ + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM64Y" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPGATHERQQ + { OpcodeByte = 145u + Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM64Z" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 146(0x92) - { Opcode = Opcode.VGATHERDPS + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM32X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPS + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM32Y" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPS + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM32Z" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPD + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM32X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPD + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM32X" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERDPD + { OpcodeByte = 146u + Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM32Y" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 147(0x93) - { Opcode = Opcode.VGATHERQPS + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPS + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64Y" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPS + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM64Z" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPD + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "VM64X" |] + Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPD + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "VM64Y" |] + Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERQPD + { OpcodeByte = 147u + Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; Unknown "VM64Z" |] + Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36471,441 +40031,488 @@ let (evexThree38: InstructionCore[][]) = [| // index 149(0x95) |] [| // index 150(0x96) - { Opcode = Opcode.VFMADDSUB132PD + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PD + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PD + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PS + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PS + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB132PS + { OpcodeByte = 150u + Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 151(0x97) - { Opcode = Opcode.VFMSUBADD132PD + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PD + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PD + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PS + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PS + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD132PS + { OpcodeByte = 151u + Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 152(0x98) - { Opcode = Opcode.VFMADD132PD + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PD + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PD + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PS + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PS + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132PS + { OpcodeByte = 152u + Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 153(0x99) - { Opcode = Opcode.VFMADD132SD + { OpcodeByte = 153u + Opcode = Opcode.VFMADD132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD132SS + { OpcodeByte = 153u + Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 154(0x9A) - { Opcode = Opcode.VFMSUB132PD + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PD + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PD + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PS + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PS + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132PS + { OpcodeByte = 154u + Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.V4FMADDPS + { OpcodeByte = 154u + Opcode = Opcode.V4FMADDPS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 155(0x9B) - { Opcode = Opcode.VFMSUB132SD + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB132SS + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.V4FMADDSS + { OpcodeByte = 155u + Opcode = Opcode.V4FMADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 156(0x9C) - { Opcode = Opcode.VFNMADD132PD + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PD + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PD + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PS + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PS + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132PS + { OpcodeByte = 156u + Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 157(0x9D) - { Opcode = Opcode.VFNMADD132SD + { OpcodeByte = 157u + Opcode = Opcode.VFNMADD132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD132SS + { OpcodeByte = 157u + Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 158(0x9E) - { Opcode = Opcode.VFNMSUB132PD + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PD + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PD + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PS + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PS + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132PS + { OpcodeByte = 158u + Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 159(0x9F) - { Opcode = Opcode.VFNMSUB132SD + { OpcodeByte = 159u + Opcode = Opcode.VFNMSUB132SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB132SS + { OpcodeByte = 159u + Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 160(0xA0) - { Opcode = Opcode.VPSCATTERDD + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -36914,7 +40521,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERDD + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -36923,7 +40531,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERDD + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -36932,7 +40541,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERDQ + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -36941,7 +40551,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERDQ + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -36950,7 +40561,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERDQ + { OpcodeByte = 160u + Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -36961,7 +40573,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 161(0xA1) - { Opcode = Opcode.VPSCATTERQD + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -36970,7 +40583,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERQD + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -36979,7 +40593,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERQD + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -36988,7 +40603,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERQQ + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -36997,7 +40613,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERQQ + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -37006,7 +40623,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSCATTERQQ + { OpcodeByte = 161u + Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -37017,7 +40635,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 162(0xA2) - { Opcode = Opcode.VSCATTERDPS + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -37026,7 +40645,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERDPS + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -37035,7 +40655,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERDPS + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -37044,7 +40665,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERDPD + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -37053,7 +40675,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERDPD + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -37062,7 +40685,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERDPD + { OpcodeByte = 162u + Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -37073,7 +40697,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 163(0xA3) - { Opcode = Opcode.VSCATTERQPS + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -37082,7 +40707,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERQPS + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -37091,7 +40717,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERQPS + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -37100,7 +40727,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERQPD + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -37109,7 +40737,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERQPD + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -37118,7 +40747,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERQPD + { OpcodeByte = 163u + Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -37133,435 +40763,481 @@ let (evexThree38: InstructionCore[][]) = [| // index 165(0xA5) |] [| // index 166(0xA6) - { Opcode = Opcode.VFMADDSUB213PD + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PD + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PD + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PS + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PS + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB213PS + { OpcodeByte = 166u + Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 167(0xA7) - { Opcode = Opcode.VFMSUBADD213PD + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PD + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PD + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PS + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PS + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD213PS + { OpcodeByte = 167u + Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 168(0xA8) - { Opcode = Opcode.VFMADD213PD + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PD + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PD + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PS + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PS + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213PS + { OpcodeByte = 168u + Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 169(0xA9) - { Opcode = Opcode.VFMADD213SD + { OpcodeByte = 169u + Opcode = Opcode.VFMADD213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD213SS + { OpcodeByte = 169u + Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 170(0xAA) - { Opcode = Opcode.VFMSUB213PD + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PD + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PD + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PS + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PS + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213PS + { OpcodeByte = 170u + Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.V4FNMADDPS + { OpcodeByte = 170u + Opcode = Opcode.V4FNMADDPS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; Unknown "M128" |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 171(0xAB) - { Opcode = Opcode.VFMSUB213SD + { OpcodeByte = 171u + Opcode = Opcode.VFMSUB213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB213SS + { OpcodeByte = 171u + Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.V4FNMADDSS + { OpcodeByte = 171u + Opcode = Opcode.V4FNMADDSS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2+3"; Unknown "M128" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 172(0xAC) - { Opcode = Opcode.VFNMADD213PD + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PD + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PD + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PS + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PS + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213PS + { OpcodeByte = 172u + Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 173(0xAD) - { Opcode = Opcode.VFNMADD213SD + { OpcodeByte = 173u + Opcode = Opcode.VFNMADD213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD213SS + { OpcodeByte = 173u + Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 174(0xAE) - { Opcode = Opcode.VFNMSUB213PD + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PD + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PD + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PS + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PS + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213PS + { OpcodeByte = 174u + Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 175(0xAF) - { Opcode = Opcode.VFNMSUB213SD + { OpcodeByte = 175u + Opcode = Opcode.VFNMSUB213SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB213SS + { OpcodeByte = 175u + Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37575,475 +41251,525 @@ let (evexThree38: InstructionCore[][]) = [| // index 179(0xB3) |] [| // index 180(0xB4) - { Opcode = Opcode.VPMADD52LUQ + { OpcodeByte = 180u + Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52LUQ + { OpcodeByte = 180u + Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52LUQ + { OpcodeByte = 180u + Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 181(0xB5) - { Opcode = Opcode.VPMADD52HUQ + { OpcodeByte = 181u + Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52HUQ + { OpcodeByte = 181u + Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPMADD52HUQ + { OpcodeByte = 181u + Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 182(0xB6) - { Opcode = Opcode.VFMADDSUB231PD + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PD + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PD + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PS + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PS + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADDSUB231PS + { OpcodeByte = 182u + Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 183(0xB7) - { Opcode = Opcode.VFMSUBADD231PD + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PD + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PD + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PS + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PS + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUBADD231PS + { OpcodeByte = 183u + Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 184(0xB8) - { Opcode = Opcode.VFMADD231PD + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PD + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PD + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PS + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PS + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231PS + { OpcodeByte = 184u + Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 185(0xB9) - { Opcode = Opcode.VFMADD231SD + { OpcodeByte = 185u + Opcode = Opcode.VFMADD231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMADD231SS + { OpcodeByte = 185u + Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 186(0xBA) - { Opcode = Opcode.VFMSUB231PD + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PD + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PD + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PS + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PS + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231PS + { OpcodeByte = 186u + Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 187(0xBB) - { Opcode = Opcode.VFMSUB231SD + { OpcodeByte = 187u + Opcode = Opcode.VFMSUB231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFMSUB231SS + { OpcodeByte = 187u + Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 188(0xBC) - { Opcode = Opcode.VFNMADD231PD + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PD + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PD + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PS + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PS + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231PS + { OpcodeByte = 188u + Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 189(0xBD) - { Opcode = Opcode.VFNMADD231SD + { OpcodeByte = 189u + Opcode = Opcode.VFNMADD231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMADD231SS + { OpcodeByte = 189u + Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 190(0xBE) - { Opcode = Opcode.VFNMSUB231PD + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PD + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PD + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PS + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PS + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231PS + { OpcodeByte = 190u + Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 191(0xBF) - { Opcode = Opcode.VFNMSUB231SD + { OpcodeByte = 191u + Opcode = Opcode.VFNMSUB231SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFNMSUB231SS + { OpcodeByte = 191u + Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38057,57 +41783,63 @@ let (evexThree38: InstructionCore[][]) = [| // index 195(0xC3) |] [| // index 196(0xC4) - { Opcode = Opcode.VPCONFLICTD + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCONFLICTD + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCONFLICTD + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCONFLICTQ + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCONFLICTQ + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCONFLICTQ + { OpcodeByte = 196u + Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38115,7 +41847,8 @@ let (evexThree38: InstructionCore[][]) = [| // index 197(0xC5) |] [| // index 198(0xC6) - { Opcode = Opcode.VGATHERPF0DPS + { OpcodeByte = 198u + Opcode = Opcode.VGATHERPF0DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38124,7 +41857,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF0DPD + { OpcodeByte = 198u + Opcode = Opcode.VGATHERPF0DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38133,7 +41867,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF1DPS + { OpcodeByte = 198u + Opcode = Opcode.VGATHERPF1DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38142,7 +41877,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF1DPD + { OpcodeByte = 198u + Opcode = Opcode.VGATHERPF1DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38151,7 +41887,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF0DPS + { OpcodeByte = 198u + Opcode = Opcode.VSCATTERPF0DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38160,7 +41897,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF0DPD + { OpcodeByte = 198u + Opcode = Opcode.VSCATTERPF0DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38169,7 +41907,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF1DPS + { OpcodeByte = 198u + Opcode = Opcode.VSCATTERPF1DPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38178,7 +41917,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF1DPD + { OpcodeByte = 198u + Opcode = Opcode.VSCATTERPF1DPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38189,7 +41929,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 199(0xC7) - { Opcode = Opcode.VGATHERPF0QPS + { OpcodeByte = 199u + Opcode = Opcode.VGATHERPF0QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38198,7 +41939,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF0QPD + { OpcodeByte = 199u + Opcode = Opcode.VGATHERPF0QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38207,7 +41949,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF1QPS + { OpcodeByte = 199u + Opcode = Opcode.VGATHERPF1QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38216,7 +41959,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGATHERPF1QPD + { OpcodeByte = 199u + Opcode = Opcode.VGATHERPF1QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38225,7 +41969,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF0QPS + { OpcodeByte = 199u + Opcode = Opcode.VSCATTERPF0QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38234,7 +41979,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF0QPD + { OpcodeByte = 199u + Opcode = Opcode.VSCATTERPF0QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38243,7 +41989,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF1QPS + { OpcodeByte = 199u + Opcode = Opcode.VSCATTERPF1QPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -38252,7 +41999,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSCATTERPF1QPD + { OpcodeByte = 199u + Opcode = Opcode.VSCATTERPF1QPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -38263,21 +42011,23 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 200(0xC8) - { Opcode = Opcode.VEXP2PD + { OpcodeByte = 200u + Opcode = Opcode.VEXP2PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXP2PS + { OpcodeByte = 200u + Opcode = Opcode.VEXP2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38285,81 +42035,89 @@ let (evexThree38: InstructionCore[][]) = [| // index 201(0xC9) |] [| // index 202(0xCA) - { Opcode = Opcode.VRCP28PD + { OpcodeByte = 202u + Opcode = Opcode.VRCP28PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP28PS + { OpcodeByte = 202u + Opcode = Opcode.VRCP28PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 203(0xCB) - { Opcode = Opcode.VRCP28SD + { OpcodeByte = 203u + Opcode = Opcode.VRCP28SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRCP28SS + { OpcodeByte = 203u + Opcode = Opcode.VRCP28SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 204(0xCC) - { Opcode = Opcode.VRSQRT28PD + { OpcodeByte = 204u + Opcode = Opcode.VRSQRT28PD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT28PS + { OpcodeByte = 204u + Opcode = Opcode.VRSQRT28PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 205(0xCD) - { Opcode = Opcode.VRSQRT28SD + { OpcodeByte = 205u + Opcode = Opcode.VRSQRT28SD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRSQRT28SS + { OpcodeByte = 205u + Opcode = Opcode.VRSQRT28SS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38367,30 +42125,33 @@ let (evexThree38: InstructionCore[][]) = [| // index 206(0xCE) |] [| // index 207(0xCF) - { Opcode = Opcode.VGF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8MULB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38420,7 +42181,8 @@ let (evexThree38: InstructionCore[][]) = [| // index 219(0xDB) |] [| // index 220(0xDC) - { Opcode = Opcode.VAESENC + { OpcodeByte = 220u + Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38429,7 +42191,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENC + { OpcodeByte = 220u + Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -38438,7 +42201,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENC + { OpcodeByte = 220u + Opcode = Opcode.VAESENC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -38449,7 +42213,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 221(0xDD) - { Opcode = Opcode.VAESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38458,7 +42223,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -38467,7 +42233,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESENCLAST + { OpcodeByte = 221u + Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -38478,7 +42245,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 222(0xDE) - { Opcode = Opcode.VAESDEC + { OpcodeByte = 222u + Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38487,7 +42255,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDEC + { OpcodeByte = 222u + Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -38496,7 +42265,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDEC + { OpcodeByte = 222u + Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -38507,7 +42277,8 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 223(0xDF) - { Opcode = Opcode.VAESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38516,7 +42287,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -38525,7 +42297,8 @@ let (evexThree38: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VAESDECLAST + { OpcodeByte = 223u + Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -38604,41 +42377,45 @@ let (evexThree38: InstructionCore[][]) = let (evexThree3A: InstructionCore[][]) = [| [| // index 0(0x00) - { Opcode = Opcode.VPERMQ + { OpcodeByte = 0u + Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMQ + { OpcodeByte = 0u + Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 1(0x01) - { Opcode = Opcode.VPERMPD + { OpcodeByte = 1u + Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMPD + { OpcodeByte = 1u + Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38646,115 +42423,127 @@ let (evexThree3A: InstructionCore[][]) = [| // index 2(0x02) |] [| // index 3(0x03) - { Opcode = Opcode.VALIGND + { OpcodeByte = 3u + Opcode = Opcode.VALIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VALIGNQ + { OpcodeByte = 3u + Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VALIGND + { OpcodeByte = 3u + Opcode = Opcode.VALIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VALIGNQ + { OpcodeByte = 3u + Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VALIGND + { OpcodeByte = 3u + Opcode = Opcode.VALIGND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VALIGNQ + { OpcodeByte = 3u + Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 4(0x04) - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 4u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 4u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPS + { OpcodeByte = 4u + Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 5(0x05) - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 5u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 5u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPERMILPD + { OpcodeByte = 5u + Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38764,117 +42553,129 @@ let (evexThree3A: InstructionCore[][]) = [| // index 7(0x07) |] [| // index 8(0x08) - { Opcode = Opcode.InvalOP + { OpcodeByte = 8u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 8u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 8u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALEPS + { OpcodeByte = 8u + Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALEPS + { OpcodeByte = 8u + Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALEPS + { OpcodeByte = 8u + Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 9(0x09) - { Opcode = Opcode.VRNDSCALEPD + { OpcodeByte = 9u + Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALEPD + { OpcodeByte = 9u + Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALEPD + { OpcodeByte = 9u + Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 10(0x0A) - { Opcode = Opcode.InvalOP + { OpcodeByte = 10u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRNDSCALESS + { OpcodeByte = 10u + Opcode = Opcode.VRNDSCALESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 11(0x0B) - { Opcode = Opcode.VRNDSCALESD + { OpcodeByte = 11u + Opcode = Opcode.VRNDSCALESD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38886,30 +42687,33 @@ let (evexThree3A: InstructionCore[][]) = [| // index 14(0x0E) |] [| // index 15(0x0F) - { Opcode = Opcode.VPALIGNR + { OpcodeByte = 15u + Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPALIGNR + { OpcodeByte = 15u + Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPALIGNR + { OpcodeByte = 15u + Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38923,7 +42727,8 @@ let (evexThree3A: InstructionCore[][]) = [| // index 19(0x13) |] [| // index 20(0x14) - { Opcode = Opcode.VPEXTRB + { OpcodeByte = 20u + Opcode = Opcode.VPEXTRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38934,7 +42739,8 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 21(0x15) - { Opcode = Opcode.VPEXTRW + { OpcodeByte = 21u + Opcode = Opcode.VPEXTRW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38945,7 +42751,8 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 22(0x16) - { Opcode = Opcode.VPEXTRD + { OpcodeByte = 22u + Opcode = Opcode.VPEXTRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -38954,7 +42761,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPEXTRQ + { OpcodeByte = 22u + Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -38965,7 +42773,8 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 23(0x17) - { Opcode = Opcode.VEXTRACTPS + { OpcodeByte = 23u + Opcode = Opcode.VEXTRACTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -38976,45 +42785,50 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 24(0x18) - { Opcode = Opcode.VINSERTF32X4 + { OpcodeByte = 24u + Opcode = Opcode.VINSERTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTF32X4 + { OpcodeByte = 24u + Opcode = Opcode.VINSERTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTF64X2 + { OpcodeByte = 24u + Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTF64X2 + { OpcodeByte = 24u + Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 25(0x19) - { Opcode = Opcode.VEXTRACTF32X4 + { OpcodeByte = 25u + Opcode = Opcode.VEXTRACTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39023,7 +42837,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTF32X4 + { OpcodeByte = 25u + Opcode = Opcode.VEXTRACTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39032,7 +42847,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTF64X2 + { OpcodeByte = 25u + Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39041,7 +42857,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTF64X2 + { OpcodeByte = 25u + Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39052,27 +42869,30 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 26(0x1A) - { Opcode = Opcode.InvalOP + { OpcodeByte = 26u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTF64X4 + { OpcodeByte = 26u + Opcode = Opcode.VINSERTF64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 27(0x1B) - { Opcode = Opcode.VEXTRACTF32X8 + { OpcodeByte = 27u + Opcode = Opcode.VEXTRACTF32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39081,7 +42901,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTF64X4 + { OpcodeByte = 27u + Opcode = Opcode.VEXTRACTF64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39094,16 +42915,18 @@ let (evexThree3A: InstructionCore[][]) = [| // index 28(0x1C) |] [| // index 29(0x1D) - { Opcode = Opcode.VCVTPS2PH + { OpcodeByte = 29u + Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PH + { OpcodeByte = 29u + Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39112,27 +42935,30 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VCVTPS2PH + { OpcodeByte = 29u + Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz256; Unknown "ZMM2{SAE}"; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 30(0x1E) - { Opcode = Opcode.VPCMPUD + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUD + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39141,7 +42967,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUD + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39150,16 +42977,18 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUQ + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUQ + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39168,7 +42997,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUQ + { OpcodeByte = 30u + Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39179,16 +43009,18 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 31(0x1F) - { Opcode = Opcode.VPCMPD + { OpcodeByte = 31u + Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPD + { OpcodeByte = 31u + Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39197,7 +43029,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPD + { OpcodeByte = 31u + Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39206,16 +43039,18 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPQ + { OpcodeByte = 31u + Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPQ + { OpcodeByte = 31u + Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39224,7 +43059,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPQ + { OpcodeByte = 31u + Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39235,7 +43071,8 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 32(0x20) - { Opcode = Opcode.VPINSRB + { OpcodeByte = 32u + Opcode = Opcode.VPINSRB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -39246,18 +43083,20 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 33(0x21) - { Opcode = Opcode.VINSERTPS + { OpcodeByte = 33u + Opcode = Opcode.VINSERTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 34(0x22) - { Opcode = Opcode.VPINSRD + { OpcodeByte = 34u + Opcode = Opcode.VPINSRD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -39266,7 +43105,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPINSRQ + { OpcodeByte = 34u + Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -39277,39 +43117,43 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 35(0x23) - { Opcode = Opcode.VSHUFF32X4 + { OpcodeByte = 35u + Opcode = Opcode.VSHUFF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFF32X4 + { OpcodeByte = 35u + Opcode = Opcode.VSHUFF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFF64X2 + { OpcodeByte = 35u + Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFF64X2 + { OpcodeByte = 35u + Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39317,169 +43161,187 @@ let (evexThree3A: InstructionCore[][]) = [| // index 36(0x24) |] [| // index 37(0x25) - { Opcode = Opcode.VPTERNLOGD + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTERNLOGD + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTERNLOGD + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTERNLOGQ + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTERNLOGQ + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPTERNLOGQ + { OpcodeByte = 37u + Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 38(0x26) - { Opcode = Opcode.VGETMANTPD + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTPD + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTPD + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 38u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 38u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 38u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTPS + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTPS + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTPS + { OpcodeByte = 38u + Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 39(0x27) - { Opcode = Opcode.VGETMANTSD + { OpcodeByte = 39u + Opcode = Opcode.VGETMANTSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 39u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGETMANTSS + { OpcodeByte = 39u + Opcode = Opcode.VGETMANTSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39517,45 +43379,50 @@ let (evexThree3A: InstructionCore[][]) = [| // index 55(0x37) |] [| // index 56(0x38) - { Opcode = Opcode.InvalOP + { OpcodeByte = 56u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 56u + Opcode = Opcode.InvalOP PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTI64X2 + { OpcodeByte = 56u + Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTI64X2 + { OpcodeByte = 56u + Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 57(0x39) - { Opcode = Opcode.VEXTRACTI32X4 + { OpcodeByte = 57u + Opcode = Opcode.VEXTRACTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39564,7 +43431,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTI32X4 + { OpcodeByte = 57u + Opcode = Opcode.VEXTRACTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39573,7 +43441,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTI64X2 + { OpcodeByte = 57u + Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39582,7 +43451,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTI64X2 + { OpcodeByte = 57u + Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39593,27 +43463,30 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 58(0x3A) - { Opcode = Opcode.VINSERTI32X8 + { OpcodeByte = 58u + Opcode = Opcode.VINSERTI32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VINSERTI64X4 + { OpcodeByte = 58u + Opcode = Opcode.VINSERTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 59(0x3B) - { Opcode = Opcode.VEXTRACTI32X8 + { OpcodeByte = 59u + Opcode = Opcode.VEXTRACTI32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39622,7 +43495,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VEXTRACTI64X4 + { OpcodeByte = 59u + Opcode = Opcode.VEXTRACTI64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39637,7 +43511,8 @@ let (evexThree3A: InstructionCore[][]) = [| // index 61(0x3D) |] [| // index 62(0x3E) - { Opcode = Opcode.VPCMPUB + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -39646,7 +43521,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUB + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39655,7 +43531,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUB + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39664,7 +43541,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUW + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -39673,7 +43551,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUW + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39682,7 +43561,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPUW + { OpcodeByte = 62u + Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39693,7 +43573,8 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 63(0x3F) - { Opcode = Opcode.VPCMPB + { OpcodeByte = 63u + Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -39702,7 +43583,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPB + { OpcodeByte = 63u + Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39711,7 +43593,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPB + { OpcodeByte = 63u + Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39720,7 +43603,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPW + { OpcodeByte = 63u + Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -39729,7 +43613,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPW + { OpcodeByte = 63u + Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39738,7 +43623,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCMPW + { OpcodeByte = 63u + Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39753,74 +43639,82 @@ let (evexThree3A: InstructionCore[][]) = [| // index 65(0x41) |] [| // index 66(0x42) - { Opcode = Opcode.VDBPSADBW + { OpcodeByte = 66u + Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDBPSADBW + { OpcodeByte = 66u + Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VDBPSADBW + { OpcodeByte = 66u + Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 67(0x43) - { Opcode = Opcode.VSHUFI32X4 + { OpcodeByte = 67u + Opcode = Opcode.VSHUFI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFI32X4 + { OpcodeByte = 67u + Opcode = Opcode.VSHUFI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFI64X2 + { OpcodeByte = 67u + Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VSHUFI64X2 + { OpcodeByte = 67u + Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 68(0x44) - { Opcode = Opcode.VPCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -39829,7 +43723,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -39838,7 +43733,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPCLMULQDQ + { OpcodeByte = 68u + Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 @@ -39871,77 +43767,85 @@ let (evexThree3A: InstructionCore[][]) = [| // index 79(0x4F) |] [| // index 80(0x50) - { Opcode = Opcode.VRANGEPD + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGEPD + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGEPD + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGEPS + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGEPS + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGEPS + { OpcodeByte = 80u + Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 81(0x51) - { Opcode = Opcode.VRANGESD + { OpcodeByte = 81u + Opcode = Opcode.VRANGESD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VRANGESS + { OpcodeByte = 81u + Opcode = Opcode.VRANGESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39951,189 +43855,209 @@ let (evexThree3A: InstructionCore[][]) = [| // index 83(0x53) |] [| // index 84(0x54) - { Opcode = Opcode.VFIXUPIMMPD + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMPD + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMPD + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMPS + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMPS + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMPS + { OpcodeByte = 84u + Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 85(0x55) - { Opcode = Opcode.VFIXUPIMMSD + { OpcodeByte = 85u + Opcode = Opcode.VFIXUPIMMSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFIXUPIMMSS + { OpcodeByte = 85u + Opcode = Opcode.VFIXUPIMMSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 86(0x56) - { Opcode = Opcode.VREDUCEPD + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCEPD + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCEPD + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 86u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 86u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 86u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCEPS + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCEPS + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCEPS + { OpcodeByte = 86u + Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 87(0x57) - { Opcode = Opcode.VREDUCESD + { OpcodeByte = 87u + Opcode = Opcode.VREDUCESD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Unknown "IMM8/R" |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 87u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VREDUCESS + { OpcodeByte = 87u + Opcode = Opcode.VREDUCESS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40167,16 +44091,18 @@ let (evexThree3A: InstructionCore[][]) = [| // index 101(0x65) |] [| // index 102(0x66) - { Opcode = Opcode.VFPCLASSPD + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSPD + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -40185,7 +44111,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSPD + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -40194,7 +44121,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 102u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -40203,7 +44131,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 102u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -40212,7 +44141,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 102u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -40221,16 +44151,18 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSPS + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSPS + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -40239,7 +44171,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSPS + { OpcodeByte = 102u + Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -40250,30 +44183,33 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 103(0x67) - { Opcode = Opcode.VFPCLASSSD + { OpcodeByte = 103u + Opcode = Opcode.VFPCLASSSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 103u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Unknown "XMM1/M16"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VFPCLASSSS + { OpcodeByte = 103u + Opcode = Opcode.VFPCLASSSS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K2{K1}"; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40295,171 +44231,189 @@ let (evexThree3A: InstructionCore[][]) = [| // index 111(0x6F) |] [| // index 112(0x70) - { Opcode = Opcode.VPSHLDW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDW + { OpcodeByte = 112u + Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 113(0x71) - { Opcode = Opcode.VPSHLDD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDD + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHLDQ + { OpcodeByte = 113u + Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 114(0x72) - { Opcode = Opcode.VPSHRDW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDW + { OpcodeByte = 114u + Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 115(0x73) - { Opcode = Opcode.VPSHRDD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDD + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VPSHRDQ + { OpcodeByte = 115u + Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40621,7 +44575,8 @@ let (evexThree3A: InstructionCore[][]) = [| // index 193(0xC1) |] [| // index 194(0xC2) - { Opcode = Opcode.InvalOP + { OpcodeByte = 194u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -40630,7 +44585,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 194u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -40639,7 +44595,8 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 194u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -40648,12 +44605,13 @@ let (evexThree3A: InstructionCore[][]) = OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.InvalOP + { OpcodeByte = 194u + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Unknown "K1{K2}"; Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40681,59 +44639,65 @@ let (evexThree3A: InstructionCore[][]) = [| // index 205(0xCD) |] [| // index 206(0xCE) - { Opcode = Opcode.VGF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEQB + { OpcodeByte = 206u + Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 207(0xCF) - { Opcode = Opcode.VGF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } - { Opcode = Opcode.VGF2P8AFFINEINVQB + { OpcodeByte = 207u + Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40835,4 +44799,3 @@ let (evexThree3A: InstructionCore[][]) = [| // index 255(0xFF) |] |] - diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 13e536455..19e012909 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -44,8 +44,14 @@ type OperandType = | RM of OprSize | RMdiff of OprSize * OprSize | Reg of OprSize + | FixedReg of Register * Visibility + | STReg of Register option + | BM of OprSize + | BndReg + | MMXReg | Mem of OprSize | Imm of OprSize + | FixedImm of int | Rel of OprSize | Unknown of string (* XXX: Temp *) @@ -54,9 +60,15 @@ and OprSize = | Sz16 | Sz32 | Sz64 + | Sz80 | Sz128 | Sz256 | Sz512 + | SzUnknown + +and Visibility = + | Explicit + | Implicit //type Operands = // | NoOperand @@ -134,7 +146,8 @@ type CompatLegMode = /// Core instruction representation used in the generated source code. type InstructionCore = - { Opcode: Opcode + { OpcodeByte: uint32 + Opcode: Opcode PrefixType: PrefixType REXPrefixType: REXPrefixType VectorLength: VectorLength diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index f54e343b1..5d6773df2 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -88,14 +88,16 @@ type IntelParser(wordSz, reader) = elif (pref &&& Prefix.REPNZ) <> Prefix.None then preType F2 else preType NP - let convertPrefix maps (pref: Prefix) (vex: VEXInfo option) = + let convertPrefix maps (pref: Prefix) (vex: VEXInfo option) opByte = match vex with | Some v -> toPrefixType Mandatory v.VPrefixes | None -> let baseType = match maps with | Normal OneByte -> Legacy - | _ -> Mandatory + | Normal TwoBytes when opByte = 0x1Fuy (* NOP *) -> Legacy + | _ -> Mandatory // FIXME: Two-byte opcodes(0x0F) are not always + // mandatory. Need more precise handling logic. toPrefixType baseType pref let getOperandSize operands = @@ -105,18 +107,29 @@ type IntelParser(wordSz, reader) = | _ -> None) operands |> Array.distinct - let checkPrefix pref insPref compat = + let checkPrefix pref insPref = match pref with - | Mandatory NP -> true - | Mandatory _ when compat = CompatLegMode.None -> pref = insPref + | Mandatory NP -> insPref = Mandatory NP || insPref = Legacy NP + | Mandatory _ -> + if insPref = Legacy NP then false + else pref = insPref | _ -> true - let checkSize pref operands = - let oprSz = getOperandSize operands + let containsSz16 oprSz = match oprSz with - | [| Some Sz16 |] | [| Some Sz16; _ |] | [| Some Sz16; _ |] -> - pref = Legacy P66 || pref = Mandatory P66 // XXX: NP - | _ -> true + | [| Some Sz16 |] + | [| Some Sz16; _ |] + | [| None; Some Sz16 |] (* Temp *) -> true + | _ -> false + + let checkSize pref operands opEn = + if opEn = OpEn.None then true + else + let oprSz = getOperandSize operands + if containsSz16 oprSz then + // FIXME: 16-bit operands do not always require a 66h prefix. + pref = Legacy P66 || pref = Mandatory P66 + else true let checkCPUMode wordSize mode64 compat = match wordSize with @@ -124,14 +137,14 @@ type IntelParser(wordSz, reader) = | WordSize.Bit32 -> compat <> CompatLegMode.NE | _ -> failwith "Unsupported word size." - let isGroupOpcode = function + let isOpcodeExtensions = function | ModRMType.ModRMOp0 | ModRMType.ModRMOp1 | ModRMType.ModRMOp2 | ModRMType.ModRMOp3 | ModRMType.ModRMOp4 | ModRMType.ModRMOp5 | ModRMType.ModRMOp6 | ModRMType.ModRMOp7 -> true | _ -> false - let checkGroupOpcode (span: ByteSpan) (phlp: ParsingHelper) modRMType = - if isGroupOpcode modRMType then + let checkOpcodeExtensions (span: ByteSpan) (phlp: ParsingHelper) modRMType = + if isOpcodeExtensions modRMType then let modRM = span[phlp.CurrPos] let reg = (modRM >>> 3) &&& 0b111uy match reg with @@ -146,26 +159,209 @@ type IntelParser(wordSz, reader) = | _ -> false else true - let findSubIndex span (phlp: ParsingHelper) (ins: InstructionCore[]) = + let checkD8Escape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADD + | 0xC8uy -> i.Opcode = Opcode.FMUL + | 0xD0uy -> i.Opcode = Opcode.FCOM + | 0xD8uy -> i.Opcode = Opcode.FCOMP + | 0xE0uy -> i.Opcode = Opcode.FSUB + | 0xE8uy -> i.Opcode = Opcode.FSUBR + | 0xF0uy -> i.Opcode = Opcode.FDIV + | 0xF8uy -> i.Opcode = Opcode.FDIVR + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkD9Escape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM with + | 0xC0uy | 0xC1uy | 0xC2uy | 0xC3uy | 0xC4uy | 0xC5uy | 0xC6uy + | 0xC7uy -> i.Opcode = Opcode.FLD + | 0xC8uy | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy + | 0xD0uy -> i.Opcode = Opcode.FNOP + | 0xD1uy | 0xD2uy | 0xD3uy | 0xD4uy | 0xD5uy | 0xD6uy | 0xD7uy | 0xD8uy + | 0xD9uy | 0xDAuy | 0xDBuy | 0xDCuy | 0xDDuy | 0xDEuy | 0xDFuy -> false + | 0xE0uy -> i.Opcode = Opcode.FCHS + | 0xE1uy -> i.Opcode = Opcode.FABS + | 0xE2uy | 0xE3uy -> false + | 0xE4uy -> i.Opcode = Opcode.FTST + | 0xE5uy -> i.Opcode = Opcode.FXAM + | 0xE6uy | 0xE7uy -> false + | 0xE8uy -> i.Opcode = Opcode.FLD1 + | 0xE9uy -> i.Opcode = Opcode.FLDL2T + | 0xEAuy -> i.Opcode = Opcode.FLDL2E + | 0xEBuy -> i.Opcode = Opcode.FLDPI + | 0xECuy -> i.Opcode = Opcode.FLDLG2 + | 0xEDuy -> i.Opcode = Opcode.FLDLN2 + | 0xEEuy -> i.Opcode = Opcode.FLDZ + | 0xEFuy -> false + | 0xF0uy -> i.Opcode = Opcode.F2XM1 + | 0xF1uy -> i.Opcode = Opcode.FYL2X + | 0xF2uy -> i.Opcode = Opcode.FPTAN + | 0xF3uy -> i.Opcode = Opcode.FPATAN + | 0xF4uy -> i.Opcode = Opcode.FXTRACT + | 0xF5uy -> i.Opcode = Opcode.FPREM1 + | 0xF6uy -> i.Opcode = Opcode.FDECSTP + | 0xF7uy -> i.Opcode = Opcode.FINCSTP + | 0xF8uy -> i.Opcode = Opcode.FPREM + | 0xF9uy -> i.Opcode = Opcode.FYL2XP1 + | 0xFAuy -> i.Opcode = Opcode.FSQRT + | 0xFBuy -> i.Opcode = Opcode.FSINCOS + | 0xFCuy -> i.Opcode = Opcode.FRNDINT + | 0xFDuy -> i.Opcode = Opcode.FSCALE + | 0xFEuy -> i.Opcode = Opcode.FSIN + | 0xFFuy -> i.Opcode = Opcode.FCOS + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkDBEscape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FCMOVNB + | 0xC8uy -> i.Opcode = Opcode.FCMOVNE + | 0xD0uy -> i.Opcode = Opcode.FCMOVNBE + | 0xD8uy -> i.Opcode = Opcode.FCMOVNU + | 0xE0uy -> + match modRM with + | 0xE2uy -> i.Opcode = Opcode.FCLEX + | 0xE3uy -> i.Opcode = Opcode.FINIT + | _ -> false + | 0xE8uy -> i.Opcode = Opcode.FUCOMI + | 0xF0uy -> i.Opcode = Opcode.FCOMI + | 0xF8uy -> false + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkDCEscape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADD + | 0xC8uy -> i.Opcode = Opcode.FMUL + | 0xD0uy | 0xD8uy -> false + | 0xE0uy -> i.Opcode = Opcode.FSUBR + | 0xE8uy -> i.Opcode = Opcode.FSUB + | 0xF0uy -> i.Opcode = Opcode.FDIVR + | 0xF8uy -> i.Opcode = Opcode.FDIV + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkDDEscape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FFREE + | 0xC8uy -> false + | 0xD0uy -> i.Opcode = Opcode.FST + | 0xD8uy -> i.Opcode = Opcode.FSTP + | 0xE0uy -> i.Opcode = Opcode.FUCOM + | 0xE8uy -> i.Opcode = Opcode.FUCOMP + | 0xF0uy | 0xF8uy -> false + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkDEEscape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADDP && i.ModRM = ModRMType.NoModRM + | 0xC8uy -> i.Opcode = Opcode.FMULP && i.ModRM = ModRMType.NoModRM + | 0xD0uy -> false + | 0xD8uy -> + match modRM with + | 0xD9uy -> i.Opcode = Opcode.FCOMPP && i.ModRM = ModRMType.NoModRM + | _ -> false + | 0xE0uy -> i.Opcode = Opcode.FSUBRP && i.ModRM = ModRMType.NoModRM + | 0xE8uy -> i.Opcode = Opcode.FSUBP && i.ModRM = ModRMType.NoModRM + | 0xF0uy -> i.Opcode = Opcode.FDIVRP && i.ModRM = ModRMType.NoModRM + | 0xF8uy -> i.Opcode = Opcode.FDIVP && i.ModRM = ModRMType.NoModRM + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkDFEscape span phlp (i: InstructionCore) modRM = + if Operands.getMod modRM = 0b11 then + if i.ModRM = ModRMType.NoModRM then + match modRM &&& 0xF8uy with + | 0xC0uy | 0xC8uy | 0xD0uy | 0xD8uy -> false + | 0xE0uy -> + match modRM with + | 0xE0uy -> i.Opcode = Opcode.FSTSW && i.ModRM = ModRMType.NoModRM + | _ -> false + | 0xE8uy -> i.Opcode = Opcode.FUCOMIP && i.ModRM = ModRMType.NoModRM + | 0xF0uy -> i.Opcode = Opcode.FCOMIP && i.ModRM = ModRMType.NoModRM + | 0xF8uy -> false + | _ -> false + else false + else + if i.ModRM = ModRMType.NoModRM then false + else checkOpcodeExtensions span phlp i.ModRM + + let checkEscape (span: ByteSpan) (phlp: ParsingHelper) (i: InstructionCore) = + match i.OpEn with + | OpEn.None -> + let modRM = span[phlp.CurrPos] + match i.OpcodeByte with + | 0xD8u -> checkD8Escape span phlp i modRM + | 0xD9u -> checkD9Escape span phlp i modRM + | 0xDBu -> checkDBEscape span phlp i modRM + | 0xDCu -> checkDCEscape span phlp i modRM + | 0xDDu -> checkDDEscape span phlp i modRM + | 0xDEu -> checkDEEscape span phlp i modRM + | 0xDFu -> checkDFEscape span phlp i modRM + | _ -> false + | _ -> true + + let findSubIndex (span: ByteSpan) (phlp: ParsingHelper) + (ins: InstructionCore[]) = let insLen = ins.Length if insLen = 0 then failwith "Error: Instruction core array is empty." elif insLen = 1 then 0 else - let pref = convertPrefix phlp.OpcodeClass phlp.Prefixes phlp.VEXInfo + let opcodeByte = span[phlp.CurrPos - 1] + let pref = + convertPrefix phlp.OpcodeClass phlp.Prefixes phlp.VEXInfo opcodeByte let mutable idx = -1 let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] - let p = checkPrefix pref insCore.PrefixType insCore.Compat - let s = checkSize pref insCore.Operands + let p = checkPrefix pref insCore.PrefixType + let s = checkSize pref insCore.Operands insCore.OpEn let c = checkCPUMode phlp.WordSize insCore.Mode64 insCore.Compat let r = checkREXPrefix phlp.REXPrefix insCore.REXPrefixType let v = checkVectorLength phlp.VEXInfo insCore.VectorLength - let g = checkGroupOpcode span phlp insCore.ModRM + let e = checkEscape span phlp insCore + let x = checkOpcodeExtensions span phlp insCore.ModRM +#if DEBUG + printfn "Checking %d: p=%b, s=%b, r=%b, v=%b, e=%b, x=%b" i p s r v e x +#endif + if p && c && s && r && v && e && x then #if DEBUG - printfn "Checking %d: p=%b, s=%b, r=%b, v=%b, g=%b" i p s r v g + printfn "[Success] maps: %A, pref: %A, rex: %A, vex: %A\nIdx:%d\n%A" + phlp.OpcodeClass pref phlp.REXPrefix phlp.VEXInfo i insCore #endif - if p && c && s && r && v && g then idx <- i + idx <- i else () i <- i + 1 if idx = -1 then @@ -183,11 +379,21 @@ type IntelParser(wordSz, reader) = | OprSize.Sz16 -> 16 | OprSize.Sz32 -> 32 | OprSize.Sz64 -> 64 + | OprSize.Sz80 -> 80 | OprSize.Sz128 -> 128 | OprSize.Sz256 -> 256 | OprSize.Sz512 -> 512 + | OprSize.SzUnknown -> 0 - let parseOperand span (phlp: ParsingHelper) modRM (opEn: OpEn) i = function + let getImmSz = function + | [| Some Sz8; None |] -> 8 + | [| Some Sz16; None |] -> 16 + | [| Some Sz32; None |] -> 32 + | [| Some Sz64; None |] -> 64 + | _ -> 0 // Temp + + let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) i = + function | RM sz -> let sz = oprSzToRegType sz // FIXME: need operand size determination logic @@ -197,30 +403,70 @@ type IntelParser(wordSz, reader) = phlp.RegSize <- sz phlp.OperationSize <- sz OperandParsers.parseMemOrReg modRM span phlp + | RMdiff(regSz, memSz) -> + let regSz = oprSzToRegType regSz + let memSz = oprSzToRegType memSz + // FIXME: need operand size determination logic + phlp.MemEffOprSize <- memSz + phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp + phlp.MemEffRegSize <- memSz + phlp.RegSize <- regSz + phlp.OperationSize <- memSz + OperandParsers.parseMemOrReg modRM span phlp + | Reg sz when ic.OpEn = OpEn.O || ic.OpEn = OpEn.OI -> + // Opcode[2:0] contains the operand. + let regBit = Operands.getRM (uint8 ic.OpcodeByte) + OperandParsers.findRegRBits (oprSzToRegType sz) phlp.REXPrefix regBit + |> OprReg | Reg sz -> - match opEn with + match ic.OpEn with | OpEn.RVM when i = 1 -> OperandParsers.parseVVVVReg phlp | _ -> OperandParsers.findRegRBits (oprSzToRegType sz) phlp.REXPrefix (Operands.getReg modRM) |> OprReg + | Mem SzUnknown -> + // FIXME: need operand size determination logic + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) + phlp.MemEffOprSize <- effOprSz + phlp.MemEffAddrSize <- effAddrSz + phlp.MemEffRegSize <- effOprSz + phlp.RegSize <- effOprSz + phlp.OperationSize <- effOprSz + OperandParsers.parseMemory modRM span (phlp: ParsingHelper) + | Mem sz -> + // FIXME: need operand size determination logic + let sz = oprSzToRegType sz + phlp.MemEffOprSize <- sz + phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp + phlp.MemEffRegSize <- sz + phlp.RegSize <- sz + phlp.OperationSize <- sz + OperandParsers.parseMemory modRM span phlp | Imm sz -> OperandParsers.parseOprImm span phlp (oprSzToRegType sz) | Rel sz -> OperandParsers.parseOprForRelJmp span phlp (oprSzToRegType sz) - | Unknown s -> // FIXME: need unknown operand type handling logic - match s with - | "M" -> - // FIXME: need operand size determination logic - let effAddrSz = ParsingHelper.GetEffAddrSize phlp - let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) - phlp.MemEffOprSize <- effOprSz - phlp.MemEffAddrSize <- effAddrSz - phlp.MemEffRegSize <- effOprSz - phlp.RegSize <- effOprSz - phlp.OperationSize <- effOprSz - OperandParsers.parseMemory modRM span (phlp: ParsingHelper) - | _ -> failwithf "Unsupported operand type: %s" s + | FixedReg(reg, _) -> OprReg reg + | STReg None -> Operands.getRM modRM |> Operands.getSTReg + | STReg(Some reg) -> OprReg reg + | BM sz -> + if Operands.modIsReg modRM then + OperandParsers.parseBoundRegister (Operands.getRM modRM) + else + let sz = oprSzToRegType sz + phlp.MemEffOprSize <- sz + phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp + phlp.MemEffRegSize <- sz + phlp.RegSize <- sz + phlp.OperationSize <- sz + OperandParsers.parseMemory modRM span phlp + | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) + | MMXReg -> OperandParsers.parseMMXReg (Operands.getReg modRM) + | FixedImm imm -> OprImm(int64 imm, getImmSz sz) + | Unknown s -> + failwithf "Need unknown operand type handling logic: %s" s | o -> failwithf "Unsupported operand type: %A" o @@ -235,18 +481,40 @@ type IntelParser(wordSz, reader) = let parseOperands span (phlp: ParsingHelper) (ic: InstructionCore) = let modRM = match ic.ModRM with + | ModRMType.NoModRM when ic.OpEn = OpEn.M -> + phlp.ReadByte span (* SETcc *) + | ModRMType.NoModRM when ic.OpEn = OpEn.None -> + phlp.ReadByte span (* Escape Opcode *) | ModRMType.NoModRM -> 0uy | _ -> phlp.ReadByte span - match ic.Operands with | [| NoOpr |] -> Operands.NoOperand | _ -> let operands = Array.zeroCreate ic.Operands.Length + let sz = getOperandSize ic.Operands for i = 0 to ic.Operands.Length - 1 do let opr = ic.Operands[i] - operands[i] <- parseOperand span phlp modRM ic.OpEn i opr + operands[i] <- parseOperand span phlp sz modRM ic i opr operands |> arrayToOperands + let handleOneByteOpcodeExtension opcodeByte = + match opcodeByte with + (* MOV *) + | 0xB9uy | 0xBAuy | 0xBBuy | 0xBCuy | 0xBDuy | 0xBEuy | 0xBFuy -> + InstructionArrays.norOne[0xB8] + (* PUSH *) + | 0x51uy | 0x52uy | 0x53uy | 0x54uy | 0x55uy | 0x56uy | 0x57uy + | 0x58uy | 0x59uy | 0x5Auy | 0x5Buy | 0x5Cuy | 0x5Duy | 0x5Euy | 0x5Fuy -> + InstructionArrays.norOne[0x50] + | _ -> InstructionArrays.norOne[int opcodeByte] + + let handleTwoByteOpcodeExtension opcodeByte = + match opcodeByte with + (* BSWAP *) + | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy | 0xCFuy -> + InstructionArrays.norTwo[0xC8] + | _ -> InstructionArrays.norTwo[int opcodeByte] + member _.SetDisassemblySyntax syntax = match syntax with | DefaultSyntax -> disasm <- Disasm.Delegate Disasm.IntelSyntax.disasm @@ -367,13 +635,21 @@ type IntelParser(wordSz, reader) = | Normal ThreeBytes3A -> InstructionArrays.norThree3A[int (phlp.ReadByte span)] | Normal TwoBytes -> - InstructionArrays.norTwo[int (phlp.ReadByte span)] - | _ -> - InstructionArrays.norOne[int (phlp.ReadByte span)] + handleTwoByteOpcodeExtension (phlp.ReadByte span) + | _ -> handleOneByteOpcodeExtension (phlp.ReadByte span) let subIdx = findSubIndex span phlp insCores #if DEBUG - printfn "InstructionCore: %A\nOpcode Class: %A" - insCores[subIdx] phlp.OpcodeClass + //printfn "\nSelected InstructionCore(%d)\n%A\nOpcode Class: %A" + // subIdx insCores[subIdx] phlp.OpcodeClass #endif + let subIdx = + match insCores[subIdx].Opcode with + | Opcode.ENDBR32 -> + match phlp.ReadByte(span) with + | 0xFAuy when insCores[subIdx + 1].Opcode = Opcode.ENDBR64 -> + subIdx + 1 + | 0xFBuy -> subIdx + | _ -> raise ParsingFailureException + | _ -> subIdx let operands = parseOperands span phlp insCores[subIdx] newInstruction phlp insCores[subIdx].Opcode operands :> IInstruction \ No newline at end of file From 75865aec347de525fa1a3190a7130f3f22065255 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 12 Mar 2026 09:20:27 +0900 Subject: [PATCH 04/26] [Intel] Handle special-case opcode --- src/FrontEnd/Intel/Parser.fs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 5d6773df2..e21257b98 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -94,8 +94,16 @@ type IntelParser(wordSz, reader) = | None -> let baseType = match maps with - | Normal OneByte -> Legacy - | Normal TwoBytes when opByte = 0x1Fuy (* NOP *) -> Legacy + | Normal OneByte -> + match opByte with + | 0x90uy when Prefix.hasREPZ pref -> Mandatory (* PAUSE *) + | _ -> Legacy + | Normal TwoBytes -> + match opByte with + | 0x00uy (* Grp 6 *) + | 0x02uy (* LAR *) + | 0x1Fuy (* NOP *) -> Legacy + | _ -> Mandatory | _ -> Mandatory // FIXME: Two-byte opcodes(0x0F) are not always // mandatory. Need more precise handling logic. toPrefixType baseType pref From 120ccdc4b1d105a7edd5269c442b5f46af362643 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Mon, 16 Mar 2026 14:44:28 +0900 Subject: [PATCH 05/26] [Intel] Clean up and fix checkPrefix --- src/FrontEnd/Intel/Intel.fs | 514 ++++++++++++++-------------- src/FrontEnd/Intel/IntelTypes.fs | 1 + src/FrontEnd/Intel/Parser.fs | 46 ++- src/FrontEnd/Intel/ParsingHelper.fs | 2 +- 4 files changed, 287 insertions(+), 276 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index ef564265c..cf7d87a84 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -7763,7 +7763,7 @@ let (norTwo: InstructionCore[][]) = [| // index 1(0x01) { OpcodeByte = 1u Opcode = Opcode.CLAC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -7863,7 +7863,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -7883,7 +7883,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.RDPKRU - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -7923,7 +7923,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -7983,7 +7983,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.SMSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -7993,7 +7993,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.STAC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8053,7 +8053,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8063,7 +8063,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.WRPKRU - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8073,7 +8073,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.XEND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8083,7 +8083,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.XGETBV - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8103,7 +8103,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.XSETBV - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8123,7 +8123,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 1u Opcode = Opcode.XTEST - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8135,7 +8135,7 @@ let (norTwo: InstructionCore[][]) = [| // index 2(0x02) { OpcodeByte = 2u Opcode = Opcode.LAR - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8145,7 +8145,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 2u Opcode = Opcode.LAR - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8187,7 +8187,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.LSL - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8235,7 +8235,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid } { OpcodeByte = 7u Opcode = Opcode.SYSRET - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -8373,7 +8373,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 16u Opcode = Opcode.MOVUPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8415,7 +8415,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 17u Opcode = Opcode.MOVUPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8437,7 +8437,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 18u Opcode = Opcode.MOVHLPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8457,7 +8457,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 18u Opcode = Opcode.MOVLPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8511,7 +8511,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 20u Opcode = Opcode.UNPCKLPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8533,7 +8533,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 21u Opcode = Opcode.UNPCKHPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8555,7 +8555,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 22u Opcode = Opcode.MOVHPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8565,7 +8565,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 22u Opcode = Opcode.MOVLHPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8597,7 +8597,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 23u Opcode = Opcode.MOVHPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8713,7 +8713,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 26u Opcode = Opcode.BNDLDX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8805,7 +8805,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 27u Opcode = Opcode.BNDSTX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -8817,7 +8817,7 @@ let (norTwo: InstructionCore[][]) = [| // index 28(0x1C) { OpcodeByte = 28u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 @@ -8915,7 +8915,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } { OpcodeByte = 32u Opcode = Opcode.MOV - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 @@ -8969,7 +8969,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } { OpcodeByte = 34u Opcode = Opcode.MOV - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 @@ -9021,7 +9021,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 40u Opcode = Opcode.MOVAPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9043,7 +9043,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 41u Opcode = Opcode.MOVAPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9065,7 +9065,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.CVTPI2PS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9127,7 +9127,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 43u Opcode = Opcode.MOVNTPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9149,7 +9149,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.CVTTPS2PI - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9211,7 +9211,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 45u Opcode = Opcode.CVTPS2PI - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9273,7 +9273,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 46u Opcode = Opcode.UCOMISS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9295,7 +9295,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 47u Opcode = Opcode.COMISS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9377,7 +9377,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.SYSEXIT - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9391,7 +9391,7 @@ let (norTwo: InstructionCore[][]) = [| // index 55(0x37) { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9401,7 +9401,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9411,7 +9411,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9421,7 +9421,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9431,7 +9431,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9441,7 +9441,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9451,7 +9451,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9461,7 +9461,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 55u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -9509,7 +9509,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.CMOVO - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9541,7 +9541,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 65u Opcode = Opcode.CMOVNO - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9573,7 +9573,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.CMOVB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9603,7 +9603,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.CMOVC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9633,7 +9633,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9665,7 +9665,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.CMOVAE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9695,7 +9695,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9725,7 +9725,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.CMOVNC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9757,7 +9757,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9787,7 +9787,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.CMOVZ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9819,7 +9819,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9849,7 +9849,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9881,7 +9881,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.CMOVBE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9911,7 +9911,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9943,7 +9943,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.CMOVA - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -9973,7 +9973,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10005,7 +10005,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 72u Opcode = Opcode.CMOVS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10037,7 +10037,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 73u Opcode = Opcode.CMOVNS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10069,7 +10069,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.CMOVP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10099,7 +10099,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10131,7 +10131,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.CMOVNP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10161,7 +10161,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10193,7 +10193,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.CMOVL - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10223,7 +10223,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10255,7 +10255,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 77u Opcode = Opcode.CMOVGE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10285,7 +10285,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 77u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10317,7 +10317,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.CMOVLE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10347,7 +10347,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10379,7 +10379,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 79u Opcode = Opcode.CMOVG - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10409,7 +10409,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 79u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10431,7 +10431,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 80u Opcode = Opcode.MOVMSKPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10453,7 +10453,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 81u Opcode = Opcode.SQRTPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10485,7 +10485,7 @@ let (norTwo: InstructionCore[][]) = [| // index 82(0x52) { OpcodeByte = 82u Opcode = Opcode.RSQRTPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10507,7 +10507,7 @@ let (norTwo: InstructionCore[][]) = [| // index 83(0x53) { OpcodeByte = 83u Opcode = Opcode.RCPPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10539,7 +10539,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 84u Opcode = Opcode.ANDPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10561,7 +10561,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 85u Opcode = Opcode.ANDNPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10583,7 +10583,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 86u Opcode = Opcode.ORPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10605,7 +10605,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 87u Opcode = Opcode.XORPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10627,7 +10627,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 88u Opcode = Opcode.ADDPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10669,7 +10669,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 89u Opcode = Opcode.MULPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10711,7 +10711,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 90u Opcode = Opcode.CVTPS2PD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10743,7 +10743,7 @@ let (norTwo: InstructionCore[][]) = [| // index 91(0x5B) { OpcodeByte = 91u Opcode = Opcode.CVTDQ2PS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10785,7 +10785,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 92u Opcode = Opcode.SUBPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10827,7 +10827,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 93u Opcode = Opcode.MINPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10869,7 +10869,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 94u Opcode = Opcode.DIVPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10911,7 +10911,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 95u Opcode = Opcode.MAXPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10943,7 +10943,7 @@ let (norTwo: InstructionCore[][]) = [| // index 96(0x60) { OpcodeByte = 96u Opcode = Opcode.PUNPCKLBW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10965,7 +10965,7 @@ let (norTwo: InstructionCore[][]) = [| // index 97(0x61) { OpcodeByte = 97u Opcode = Opcode.PUNPCKLWD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -10987,7 +10987,7 @@ let (norTwo: InstructionCore[][]) = [| // index 98(0x62) { OpcodeByte = 98u Opcode = Opcode.PUNPCKLDQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11009,7 +11009,7 @@ let (norTwo: InstructionCore[][]) = [| // index 99(0x63) { OpcodeByte = 99u Opcode = Opcode.PACKSSWB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11031,7 +11031,7 @@ let (norTwo: InstructionCore[][]) = [| // index 100(0x64) { OpcodeByte = 100u Opcode = Opcode.PCMPGTB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11053,7 +11053,7 @@ let (norTwo: InstructionCore[][]) = [| // index 101(0x65) { OpcodeByte = 101u Opcode = Opcode.PCMPGTW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11075,7 +11075,7 @@ let (norTwo: InstructionCore[][]) = [| // index 102(0x66) { OpcodeByte = 102u Opcode = Opcode.PCMPGTD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11097,7 +11097,7 @@ let (norTwo: InstructionCore[][]) = [| // index 103(0x67) { OpcodeByte = 103u Opcode = Opcode.PACKUSWB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11119,7 +11119,7 @@ let (norTwo: InstructionCore[][]) = [| // index 104(0x68) { OpcodeByte = 104u Opcode = Opcode.PUNPCKHBW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11141,7 +11141,7 @@ let (norTwo: InstructionCore[][]) = [| // index 105(0x69) { OpcodeByte = 105u Opcode = Opcode.PUNPCKHWD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11163,7 +11163,7 @@ let (norTwo: InstructionCore[][]) = [| // index 106(0x6A) { OpcodeByte = 106u Opcode = Opcode.PUNPCKHDQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11185,7 +11185,7 @@ let (norTwo: InstructionCore[][]) = [| // index 107(0x6B) { OpcodeByte = 107u Opcode = Opcode.PACKSSDW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11231,7 +11231,7 @@ let (norTwo: InstructionCore[][]) = [| // index 110(0x6E) { OpcodeByte = 110u Opcode = Opcode.MOVD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11241,7 +11241,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 110u Opcode = Opcode.MOVQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11293,7 +11293,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 111u Opcode = Opcode.MOVQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11335,7 +11335,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 112u Opcode = Opcode.PSHUFW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11347,7 +11347,7 @@ let (norTwo: InstructionCore[][]) = [| // index 113(0x71) { OpcodeByte = 113u Opcode = Opcode.PSLLW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -11367,7 +11367,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 113u Opcode = Opcode.PSRAW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -11387,7 +11387,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 113u Opcode = Opcode.PSRLW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 @@ -11409,7 +11409,7 @@ let (norTwo: InstructionCore[][]) = [| // index 114(0x72) { OpcodeByte = 114u Opcode = Opcode.PSLLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -11429,7 +11429,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 114u Opcode = Opcode.PSRAD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -11449,7 +11449,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 114u Opcode = Opcode.PSRLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 @@ -11481,7 +11481,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 115u Opcode = Opcode.PSLLQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -11511,7 +11511,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 115u Opcode = Opcode.PSRLQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 @@ -11533,7 +11533,7 @@ let (norTwo: InstructionCore[][]) = [| // index 116(0x74) { OpcodeByte = 116u Opcode = Opcode.PCMPEQB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11555,7 +11555,7 @@ let (norTwo: InstructionCore[][]) = [| // index 117(0x75) { OpcodeByte = 117u Opcode = Opcode.PCMPEQW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11577,7 +11577,7 @@ let (norTwo: InstructionCore[][]) = [| // index 118(0x76) { OpcodeByte = 118u Opcode = Opcode.PCMPEQD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11599,7 +11599,7 @@ let (norTwo: InstructionCore[][]) = [| // index 119(0x77) { OpcodeByte = 119u Opcode = Opcode.EMMS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -11663,7 +11663,7 @@ let (norTwo: InstructionCore[][]) = [| // index 126(0x7E) { OpcodeByte = 126u Opcode = Opcode.MOVD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11673,7 +11673,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 126u Opcode = Opcode.MOVQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -11735,7 +11735,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 127u Opcode = Opcode.MOVQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -12807,7 +12807,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.BT - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -12839,7 +12839,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 164u Opcode = Opcode.SHLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -12871,7 +12871,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 165u Opcode = Opcode.SHLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -12963,7 +12963,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 171u Opcode = Opcode.BTS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -12995,7 +12995,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.SHRD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13027,7 +13027,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 173u Opcode = Opcode.SHRD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13039,7 +13039,7 @@ let (norTwo: InstructionCore[][]) = [| // index 174(0xAE) { OpcodeByte = 174u Opcode = Opcode.CLFLUSH - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -13049,7 +13049,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.CLFLUSHOPT - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -13079,7 +13079,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.FXRSTOR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 @@ -13089,7 +13089,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.FXRSTOR64 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 @@ -13099,7 +13099,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } { OpcodeByte = 174u Opcode = Opcode.FXSAVE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 @@ -13109,7 +13109,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.FXSAVE64 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 @@ -13139,7 +13139,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.LDMXCSR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 @@ -13149,7 +13149,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.LFENCE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -13159,7 +13159,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.MFENCE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -13229,7 +13229,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.SFENCE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -13239,7 +13239,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.STMXCSR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 @@ -13319,7 +13319,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.XRSTOR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 @@ -13329,7 +13329,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 @@ -13339,7 +13339,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.XSAVE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -13349,7 +13349,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -13359,7 +13359,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.XSAVEOPT - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -13369,7 +13369,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 174u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -13401,7 +13401,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 175u Opcode = Opcode.IMUL - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13445,7 +13445,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 177u Opcode = Opcode.CMPXCHG - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13477,7 +13477,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 178u Opcode = Opcode.LSS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13509,7 +13509,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 179u Opcode = Opcode.BTR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13541,7 +13541,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 180u Opcode = Opcode.LFS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13573,7 +13573,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 181u Opcode = Opcode.LGS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13605,7 +13605,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.MOVZX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13627,7 +13627,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.MOVZX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13703,7 +13703,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.BT - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -13733,7 +13733,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.BTC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -13763,7 +13763,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.BTR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -13793,7 +13793,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.BTS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 @@ -13825,7 +13825,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 187u Opcode = Opcode.BTC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13857,7 +13857,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13919,7 +13919,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 189u Opcode = Opcode.BSR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -13981,7 +13981,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.MOVSX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14003,7 +14003,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 191u Opcode = Opcode.MOVSX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14047,7 +14047,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 193u Opcode = Opcode.XADD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14069,7 +14069,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 194u Opcode = Opcode.CMPPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14101,7 +14101,7 @@ let (norTwo: InstructionCore[][]) = [| // index 195(0xC3) { OpcodeByte = 195u Opcode = Opcode.MOVNTI - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14111,7 +14111,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 195u Opcode = Opcode.MOVNTI - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14123,7 +14123,7 @@ let (norTwo: InstructionCore[][]) = [| // index 196(0xC4) { OpcodeByte = 196u Opcode = Opcode.PINSRW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14145,7 +14145,7 @@ let (norTwo: InstructionCore[][]) = [| // index 197(0xC5) { OpcodeByte = 197u Opcode = Opcode.PEXTRW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14177,7 +14177,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 198u Opcode = Opcode.SHUFPS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14199,7 +14199,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.CMPXCHG16B - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 @@ -14229,7 +14229,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDRAND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -14239,7 +14239,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDRAND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -14249,7 +14249,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDRAND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 @@ -14259,7 +14259,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDSEED - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -14269,7 +14269,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDSEED - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -14279,7 +14279,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.RDSEED - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 @@ -14299,7 +14299,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XRSTORS - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 @@ -14309,7 +14309,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XRSTORS64 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 @@ -14319,7 +14319,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XSAVEC - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -14329,7 +14329,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XSAVEC64 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 @@ -14339,7 +14339,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XSAVES - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 @@ -14349,7 +14349,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 199u Opcode = Opcode.XSAVES64 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 @@ -14371,7 +14371,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 200u Opcode = Opcode.BSWAP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -14419,7 +14419,7 @@ let (norTwo: InstructionCore[][]) = [| // index 209(0xD1) { OpcodeByte = 209u Opcode = Opcode.PSRLW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14441,7 +14441,7 @@ let (norTwo: InstructionCore[][]) = [| // index 210(0xD2) { OpcodeByte = 210u Opcode = Opcode.PSRLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14463,7 +14463,7 @@ let (norTwo: InstructionCore[][]) = [| // index 211(0xD3) { OpcodeByte = 211u Opcode = Opcode.PSRLQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14485,7 +14485,7 @@ let (norTwo: InstructionCore[][]) = [| // index 212(0xD4) { OpcodeByte = 212u Opcode = Opcode.PADDQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14507,7 +14507,7 @@ let (norTwo: InstructionCore[][]) = [| // index 213(0xD5) { OpcodeByte = 213u Opcode = Opcode.PMULLW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14561,7 +14561,7 @@ let (norTwo: InstructionCore[][]) = [| // index 215(0xD7) { OpcodeByte = 215u Opcode = Opcode.PMOVMSKB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14583,7 +14583,7 @@ let (norTwo: InstructionCore[][]) = [| // index 216(0xD8) { OpcodeByte = 216u Opcode = Opcode.PSUBUSB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14605,7 +14605,7 @@ let (norTwo: InstructionCore[][]) = [| // index 217(0xD9) { OpcodeByte = 217u Opcode = Opcode.PSUBUSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14627,7 +14627,7 @@ let (norTwo: InstructionCore[][]) = [| // index 218(0xDA) { OpcodeByte = 218u Opcode = Opcode.PMINUB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14649,7 +14649,7 @@ let (norTwo: InstructionCore[][]) = [| // index 219(0xDB) { OpcodeByte = 219u Opcode = Opcode.PAND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14671,7 +14671,7 @@ let (norTwo: InstructionCore[][]) = [| // index 220(0xDC) { OpcodeByte = 220u Opcode = Opcode.PADDUSB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14693,7 +14693,7 @@ let (norTwo: InstructionCore[][]) = [| // index 221(0xDD) { OpcodeByte = 221u Opcode = Opcode.PADDUSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14715,7 +14715,7 @@ let (norTwo: InstructionCore[][]) = [| // index 222(0xDE) { OpcodeByte = 222u Opcode = Opcode.PMAXUB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14737,7 +14737,7 @@ let (norTwo: InstructionCore[][]) = [| // index 223(0xDF) { OpcodeByte = 223u Opcode = Opcode.PANDN - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14759,7 +14759,7 @@ let (norTwo: InstructionCore[][]) = [| // index 224(0xE0) { OpcodeByte = 224u Opcode = Opcode.PAVGB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14781,7 +14781,7 @@ let (norTwo: InstructionCore[][]) = [| // index 225(0xE1) { OpcodeByte = 225u Opcode = Opcode.PSRAW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14803,7 +14803,7 @@ let (norTwo: InstructionCore[][]) = [| // index 226(0xE2) { OpcodeByte = 226u Opcode = Opcode.PSRAD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14825,7 +14825,7 @@ let (norTwo: InstructionCore[][]) = [| // index 227(0xE3) { OpcodeByte = 227u Opcode = Opcode.PAVGW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14847,7 +14847,7 @@ let (norTwo: InstructionCore[][]) = [| // index 228(0xE4) { OpcodeByte = 228u Opcode = Opcode.PMULHUW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14869,7 +14869,7 @@ let (norTwo: InstructionCore[][]) = [| // index 229(0xE5) { OpcodeByte = 229u Opcode = Opcode.PMULHW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14933,7 +14933,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 231u Opcode = Opcode.MOVNTQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14945,7 +14945,7 @@ let (norTwo: InstructionCore[][]) = [| // index 232(0xE8) { OpcodeByte = 232u Opcode = Opcode.PSUBSB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14967,7 +14967,7 @@ let (norTwo: InstructionCore[][]) = [| // index 233(0xE9) { OpcodeByte = 233u Opcode = Opcode.PSUBSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -14989,7 +14989,7 @@ let (norTwo: InstructionCore[][]) = [| // index 234(0xEA) { OpcodeByte = 234u Opcode = Opcode.PMINSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15011,7 +15011,7 @@ let (norTwo: InstructionCore[][]) = [| // index 235(0xEB) { OpcodeByte = 235u Opcode = Opcode.POR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15033,7 +15033,7 @@ let (norTwo: InstructionCore[][]) = [| // index 236(0xEC) { OpcodeByte = 236u Opcode = Opcode.PADDSB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15055,7 +15055,7 @@ let (norTwo: InstructionCore[][]) = [| // index 237(0xED) { OpcodeByte = 237u Opcode = Opcode.PADDSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15077,7 +15077,7 @@ let (norTwo: InstructionCore[][]) = [| // index 238(0xEE) { OpcodeByte = 238u Opcode = Opcode.PMAXSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15099,7 +15099,7 @@ let (norTwo: InstructionCore[][]) = [| // index 239(0xEF) { OpcodeByte = 239u Opcode = Opcode.PXOR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15133,7 +15133,7 @@ let (norTwo: InstructionCore[][]) = [| // index 241(0xF1) { OpcodeByte = 241u Opcode = Opcode.PSLLW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15155,7 +15155,7 @@ let (norTwo: InstructionCore[][]) = [| // index 242(0xF2) { OpcodeByte = 242u Opcode = Opcode.PSLLD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15177,7 +15177,7 @@ let (norTwo: InstructionCore[][]) = [| // index 243(0xF3) { OpcodeByte = 243u Opcode = Opcode.PSLLQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15199,7 +15199,7 @@ let (norTwo: InstructionCore[][]) = [| // index 244(0xF4) { OpcodeByte = 244u Opcode = Opcode.PMULUDQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15221,7 +15221,7 @@ let (norTwo: InstructionCore[][]) = [| // index 245(0xF5) { OpcodeByte = 245u Opcode = Opcode.PMADDWD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15243,7 +15243,7 @@ let (norTwo: InstructionCore[][]) = [| // index 246(0xF6) { OpcodeByte = 246u Opcode = Opcode.PSADBW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15275,7 +15275,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 247u Opcode = Opcode.MASKMOVQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15287,7 +15287,7 @@ let (norTwo: InstructionCore[][]) = [| // index 248(0xF8) { OpcodeByte = 248u Opcode = Opcode.PSUBB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15309,7 +15309,7 @@ let (norTwo: InstructionCore[][]) = [| // index 249(0xF9) { OpcodeByte = 249u Opcode = Opcode.PSUBW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15331,7 +15331,7 @@ let (norTwo: InstructionCore[][]) = [| // index 250(0xFA) { OpcodeByte = 250u Opcode = Opcode.PSUBD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15353,7 +15353,7 @@ let (norTwo: InstructionCore[][]) = [| // index 251(0xFB) { OpcodeByte = 251u Opcode = Opcode.PSUBQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15375,7 +15375,7 @@ let (norTwo: InstructionCore[][]) = [| // index 252(0xFC) { OpcodeByte = 252u Opcode = Opcode.PADDB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15397,7 +15397,7 @@ let (norTwo: InstructionCore[][]) = [| // index 253(0xFD) { OpcodeByte = 253u Opcode = Opcode.PADDW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15419,7 +15419,7 @@ let (norTwo: InstructionCore[][]) = [| // index 254(0xFE) { OpcodeByte = 254u Opcode = Opcode.PADDD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15457,7 +15457,7 @@ let (norThree38: InstructionCore[][]) = [| // index 0(0x00) { OpcodeByte = 0u Opcode = Opcode.PSHUFB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15479,7 +15479,7 @@ let (norThree38: InstructionCore[][]) = [| // index 1(0x01) { OpcodeByte = 1u Opcode = Opcode.PHADDW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15501,7 +15501,7 @@ let (norThree38: InstructionCore[][]) = [| // index 2(0x02) { OpcodeByte = 2u Opcode = Opcode.PHADDD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15523,7 +15523,7 @@ let (norThree38: InstructionCore[][]) = [| // index 3(0x03) { OpcodeByte = 3u Opcode = Opcode.PHADDSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15545,7 +15545,7 @@ let (norThree38: InstructionCore[][]) = [| // index 4(0x04) { OpcodeByte = 4u Opcode = Opcode.PMADDUBSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15567,7 +15567,7 @@ let (norThree38: InstructionCore[][]) = [| // index 5(0x05) { OpcodeByte = 5u Opcode = Opcode.PHSUBW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15589,7 +15589,7 @@ let (norThree38: InstructionCore[][]) = [| // index 6(0x06) { OpcodeByte = 6u Opcode = Opcode.PHSUBD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15611,7 +15611,7 @@ let (norThree38: InstructionCore[][]) = [| // index 7(0x07) { OpcodeByte = 7u Opcode = Opcode.PHSUBSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15633,7 +15633,7 @@ let (norThree38: InstructionCore[][]) = [| // index 8(0x08) { OpcodeByte = 8u Opcode = Opcode.PSIGNB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15655,7 +15655,7 @@ let (norThree38: InstructionCore[][]) = [| // index 9(0x09) { OpcodeByte = 9u Opcode = Opcode.PSIGNW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15677,7 +15677,7 @@ let (norThree38: InstructionCore[][]) = [| // index 10(0x0A) { OpcodeByte = 10u Opcode = Opcode.PSIGND - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15699,7 +15699,7 @@ let (norThree38: InstructionCore[][]) = [| // index 11(0x0B) { OpcodeByte = 11u Opcode = Opcode.PMULHRSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15793,7 +15793,7 @@ let (norThree38: InstructionCore[][]) = [| // index 28(0x1C) { OpcodeByte = 28u Opcode = Opcode.PABSB - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15815,7 +15815,7 @@ let (norThree38: InstructionCore[][]) = [| // index 29(0x1D) { OpcodeByte = 29u Opcode = Opcode.PABSW - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -15837,7 +15837,7 @@ let (norThree38: InstructionCore[][]) = [| // index 30(0x1E) { OpcodeByte = 30u Opcode = Opcode.PABSD - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16487,7 +16487,7 @@ let (norThree38: InstructionCore[][]) = [| // index 200(0xC8) { OpcodeByte = 200u Opcode = Opcode.SHA1NEXTE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16499,7 +16499,7 @@ let (norThree38: InstructionCore[][]) = [| // index 201(0xC9) { OpcodeByte = 201u Opcode = Opcode.SHA1MSG1 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16511,7 +16511,7 @@ let (norThree38: InstructionCore[][]) = [| // index 202(0xCA) { OpcodeByte = 202u Opcode = Opcode.SHA1MSG2 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16523,7 +16523,7 @@ let (norThree38: InstructionCore[][]) = [| // index 203(0xCB) { OpcodeByte = 203u Opcode = Opcode.SHA256RNDS2 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16535,7 +16535,7 @@ let (norThree38: InstructionCore[][]) = [| // index 204(0xCC) { OpcodeByte = 204u Opcode = Opcode.SHA256MSG1 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16547,7 +16547,7 @@ let (norThree38: InstructionCore[][]) = [| // index 205(0xCD) { OpcodeByte = 205u Opcode = Opcode.SHA256MSG2 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16817,7 +16817,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 240u Opcode = Opcode.MOVBE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16879,7 +16879,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 241u Opcode = Opcode.MOVBE - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -16969,7 +16969,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 246u Opcode = Opcode.WRSSQ - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM @@ -17015,7 +17015,7 @@ let (norThree38: InstructionCore[][]) = [| // index 249(0xF9) { OpcodeByte = 249u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -17025,7 +17025,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.None } { OpcodeByte = 249u Opcode = Opcode.InvalOP - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -17173,7 +17173,7 @@ let (norThree3A: InstructionCore[][]) = [| // index 15(0x0F) { OpcodeByte = 15u Opcode = Opcode.PALIGNR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -17741,7 +17741,7 @@ let (norThree3A: InstructionCore[][]) = [| // index 204(0xCC) { OpcodeByte = 204u Opcode = Opcode.SHA1RNDS4 - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM @@ -44798,4 +44798,4 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 255(0xFF) |] - |] + |] \ No newline at end of file diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 19e012909..9b9e44948 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -1,5 +1,6 @@ namespace B2R2.FrontEnd.Intel +[] type OpcodeClass = | Normal of OpcodeMap | VEX of OpcodeMap diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index e21257b98..64ab69f8d 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -94,11 +94,11 @@ type IntelParser(wordSz, reader) = | None -> let baseType = match maps with - | Normal OneByte -> + | OpcodeClass.Normal OneByte -> match opByte with | 0x90uy when Prefix.hasREPZ pref -> Mandatory (* PAUSE *) | _ -> Legacy - | Normal TwoBytes -> + | OpcodeClass.Normal TwoBytes -> match opByte with | 0x00uy (* Grp 6 *) | 0x02uy (* LAR *) @@ -123,6 +123,16 @@ type IntelParser(wordSz, reader) = else pref = insPref | _ -> true + let checkPrefix2 (pref: Prefix) insPref = + let mPref = pref &&& (Prefix.OPSIZE ||| Prefix.REPZ ||| Prefix.REPNZ) + if Prefix.hasOprSz mPref then insPref = Mandatory P66 || insPref = Legacy NP + elif Prefix.hasREPZ mPref then insPref = Mandatory F3 || insPref = Legacy NP + elif Prefix.hasREPNZ mPref then + insPref = Mandatory F2 || insPref = Legacy NP + elif mPref = Prefix.None then + insPref = Legacy NP || insPref = Mandatory NP + else false + let containsSz16 oprSz = match oprSz with | [| Some Sz16 |] @@ -354,7 +364,7 @@ type IntelParser(wordSz, reader) = let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] - let p = checkPrefix pref insCore.PrefixType + let p = checkPrefix2 phlp.Prefixes insCore.PrefixType let s = checkSize pref insCore.Operands insCore.OpEn let c = checkCPUMode phlp.WordSize insCore.Mode64 insCore.Compat let r = checkREXPrefix phlp.REXPrefix insCore.REXPrefixType @@ -417,9 +427,9 @@ type IntelParser(wordSz, reader) = // FIXME: need operand size determination logic phlp.MemEffOprSize <- memSz phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp - phlp.MemEffRegSize <- memSz + phlp.MemEffRegSize <- regSz phlp.RegSize <- regSz - phlp.OperationSize <- memSz + phlp.OperationSize <- regSz OperandParsers.parseMemOrReg modRM span phlp | Reg sz when ic.OpEn = OpEn.O || ic.OpEn = OpEn.OI -> // Opcode[2:0] contains the operand. @@ -575,16 +585,16 @@ type IntelParser(wordSz, reader) = | 0x0Fuy -> match bs[pos + 1] with | 0x38uy -> - phlp.OpcodeClass <- Normal ThreeBytes38 + phlp.OpcodeClass <- OpcodeClass.Normal ThreeBytes38 pos + 2 | 0x3Auy -> - phlp.OpcodeClass <- Normal ThreeBytes3A + phlp.OpcodeClass <- OpcodeClass.Normal ThreeBytes3A pos + 2 | _ -> - phlp.OpcodeClass <- Normal TwoBytes + phlp.OpcodeClass <- OpcodeClass.Normal TwoBytes pos + 1 | _ -> - phlp.OpcodeClass <- Normal OneByte + phlp.OpcodeClass <- OpcodeClass.Normal OneByte pos interface IInstructionParsable with @@ -617,32 +627,32 @@ type IntelParser(wordSz, reader) = | v when v &&& VEXType.EVEX = VEXType.EVEX -> match vInfo.VEXType &&& (~~~VEXType.EVEX) with | VEXType.TwoByteOp -> - phlp.OpcodeClass <- EVEX TwoBytes + phlp.OpcodeClass <- OpcodeClass.EVEX TwoBytes InstructionArrays.evexTwo[int (phlp.ReadByte span)] | VEXType.ThreeByteOpOne -> - phlp.OpcodeClass <- EVEX ThreeBytes38 + phlp.OpcodeClass <- OpcodeClass.EVEX ThreeBytes38 InstructionArrays.evexThree38[int (phlp.ReadByte span)] | VEXType.ThreeByteOpTwo -> - phlp.OpcodeClass <- EVEX ThreeBytes3A + phlp.OpcodeClass <- OpcodeClass.EVEX ThreeBytes3A InstructionArrays.evexThree3A[int (phlp.ReadByte span)] | _ -> raise ParsingFailureException | VEXType.TwoByteOp -> - phlp.OpcodeClass <- VEX TwoBytes + phlp.OpcodeClass <- OpcodeClass.VEX TwoBytes InstructionArrays.vexTwo[int (phlp.ReadByte span)] | VEXType.ThreeByteOpOne -> - phlp.OpcodeClass <- VEX ThreeBytes38 + phlp.OpcodeClass <- OpcodeClass.VEX ThreeBytes38 InstructionArrays.vexThree38[int (phlp.ReadByte span)] | VEXType.ThreeByteOpTwo -> - phlp.OpcodeClass <- VEX ThreeBytes3A + phlp.OpcodeClass <- OpcodeClass.VEX ThreeBytes3A InstructionArrays.vexThree3A[int (phlp.ReadByte span)] | _ -> raise ParsingFailureException | None -> match phlp.OpcodeClass with - | Normal ThreeBytes38 -> + | OpcodeClass.Normal ThreeBytes38 -> InstructionArrays.norThree38[int (phlp.ReadByte span)] - | Normal ThreeBytes3A -> + | OpcodeClass.Normal ThreeBytes3A -> InstructionArrays.norThree3A[int (phlp.ReadByte span)] - | Normal TwoBytes -> + | OpcodeClass.Normal TwoBytes -> handleTwoByteOpcodeExtension (phlp.ReadByte span) | _ -> handleOneByteOpcodeExtension (phlp.ReadByte span) let subIdx = findSubIndex span phlp insCores diff --git a/src/FrontEnd/Intel/ParsingHelper.fs b/src/FrontEnd/Intel/ParsingHelper.fs index 50e38573a..e74988a38 100644 --- a/src/FrontEnd/Intel/ParsingHelper.fs +++ b/src/FrontEnd/Intel/ParsingHelper.fs @@ -47,7 +47,7 @@ type internal ParsingHelper(reader: IBinReader, let mutable regSz = 0 let mutable operationSz = 0 let mutable tupleType = TupleType.NA - let mutable opcodeClass = Normal OpcodeMap.OneByte + let mutable opcodeClass = OpcodeClass.Normal OpcodeMap.OneByte let mutable isFar = false new(reader, wordSz, lifter) = From 9672c554afa177df5d03d402aac89c42dc1fe037 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 17 Mar 2026 16:53:54 +0900 Subject: [PATCH 06/26] [Intel] Strip mandatory prefixes after parsing --- src/FrontEnd/Intel/Parser.fs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 64ab69f8d..020987622 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -533,6 +533,11 @@ type IntelParser(wordSz, reader) = InstructionArrays.norTwo[0xC8] | _ -> InstructionArrays.norTwo[int opcodeByte] + let filterPrefixes (phlp: ParsingHelper) prefixType = + match prefixType with + | Mandatory _ -> phlp.Prefixes <- filterPrefs phlp.Prefixes + | _ -> () + member _.SetDisassemblySyntax syntax = match syntax with | DefaultSyntax -> disasm <- Disasm.Delegate Disasm.IntelSyntax.disasm @@ -669,5 +674,7 @@ type IntelParser(wordSz, reader) = | 0xFBuy -> subIdx | _ -> raise ParsingFailureException | _ -> subIdx - let operands = parseOperands span phlp insCores[subIdx] - newInstruction phlp insCores[subIdx].Opcode operands :> IInstruction \ No newline at end of file + let insCore = insCores[subIdx] + let operands = parseOperands span phlp insCore + filterPrefixes phlp insCore.PrefixType + newInstruction phlp insCore.Opcode operands :> IInstruction \ No newline at end of file From df0a548b78a2dedd981e888a2792e7f15e38e6bb Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Mon, 23 Mar 2026 16:58:44 +0900 Subject: [PATCH 07/26] [Intel] Fix instruction tables and parser --- src/FrontEnd/Intel/Instruction.fs | 2 +- src/FrontEnd/Intel/Intel.fs | 9662 ++++++++++++++--------------- src/FrontEnd/Intel/IntelTypes.fs | 30 +- src/FrontEnd/Intel/Lifter.fs | 6 +- src/FrontEnd/Intel/Parser.fs | 581 +- src/RearEnd/BinDisasm/Program.fs | 8 +- 6 files changed, 5162 insertions(+), 5127 deletions(-) diff --git a/src/FrontEnd/Intel/Instruction.fs b/src/FrontEnd/Intel/Instruction.fs index bbdee91ae..3ea530c07 100644 --- a/src/FrontEnd/Intel/Instruction.fs +++ b/src/FrontEnd/Intel/Instruction.fs @@ -148,7 +148,7 @@ type Instruction | Opcode.HLT | Opcode.UD2 | Opcode.SYSEXIT | Opcode.SYSRET - | Opcode.IRET | Opcode.IRETW | Opcode.IRETD | Opcode.IRETQ -> true + | Opcode.IRET | Opcode.IRETD | Opcode.IRETQ -> true | _ -> false member _.IsNop = diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index cf7d87a84..c8ed90b9e 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -8,7 +8,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -20,7 +20,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -30,7 +30,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -40,7 +40,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -52,7 +52,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -64,7 +64,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -74,7 +74,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -84,7 +84,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -141,7 +141,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ES" |] + Operands = [| FixedReg(Register.ES, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -153,7 +153,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "ES" |] + Operands = [| FixedReg(Register.ES, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -164,7 +164,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -176,7 +176,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -186,7 +186,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -196,7 +196,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -208,7 +208,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -220,7 +220,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -230,7 +230,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -240,7 +240,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -297,7 +297,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "CS" |] + Operands = [| FixedReg(Register.CS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -310,7 +310,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -322,7 +322,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -332,7 +332,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -342,7 +342,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -354,7 +354,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -366,7 +366,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -376,7 +376,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -386,7 +386,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -443,7 +443,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "SS" |] + Operands = [| FixedReg(Register.SS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -455,7 +455,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "SS" |] + Operands = [| FixedReg(Register.SS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -466,7 +466,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -478,7 +478,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -488,7 +488,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -498,7 +498,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -510,7 +510,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -522,7 +522,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -532,7 +532,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -542,7 +542,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -599,7 +599,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DS" |] + Operands = [| FixedReg(Register.DS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -611,7 +611,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "DS" |] + Operands = [| FixedReg(Register.DS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -622,7 +622,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -634,7 +634,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -644,7 +644,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -654,7 +654,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -666,7 +666,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -678,7 +678,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -688,7 +688,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -698,7 +698,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -768,7 +768,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -780,7 +780,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -790,7 +790,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -800,7 +800,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -812,7 +812,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -824,7 +824,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -834,7 +834,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -844,7 +844,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -914,7 +914,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -926,7 +926,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -936,7 +936,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -946,7 +946,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -958,7 +958,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -970,7 +970,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -980,7 +980,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -990,7 +990,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1060,7 +1060,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -1072,7 +1072,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -1082,7 +1082,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -1092,7 +1092,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -1104,7 +1104,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1116,7 +1116,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1126,7 +1126,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1136,7 +1136,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1414,7 +1414,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16&16" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -1424,7 +1424,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M32&32" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -1436,7 +1436,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.NE @@ -1446,7 +1446,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1456,7 +1456,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1466,7 +1466,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -1508,7 +1508,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16; Imm Sz16 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -1518,7 +1518,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -1528,7 +1528,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -1552,7 +1552,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -1562,7 +1562,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -1572,7 +1572,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid @@ -2044,7 +2044,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2054,7 +2054,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2064,7 +2064,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2074,7 +2074,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2084,7 +2084,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2094,7 +2094,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2104,7 +2104,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2114,7 +2114,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2126,7 +2126,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2136,7 +2136,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2146,7 +2146,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2156,7 +2156,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2166,7 +2166,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2176,7 +2176,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2186,7 +2186,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2196,7 +2196,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2206,7 +2206,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2216,7 +2216,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2226,7 +2226,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2236,7 +2236,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2246,7 +2246,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2256,7 +2256,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2266,7 +2266,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2276,7 +2276,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2286,7 +2286,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2296,7 +2296,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2306,7 +2306,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2316,7 +2316,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2326,7 +2326,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2336,7 +2336,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2346,7 +2346,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2356,7 +2356,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2370,7 +2370,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2380,7 +2380,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2390,7 +2390,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2400,7 +2400,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2410,7 +2410,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2420,7 +2420,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2430,7 +2430,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2440,7 +2440,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2450,7 +2450,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2460,7 +2460,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2470,7 +2470,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2480,7 +2480,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2490,7 +2490,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2500,7 +2500,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2510,7 +2510,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2520,7 +2520,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2530,7 +2530,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2540,7 +2540,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2550,7 +2550,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2560,7 +2560,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2570,7 +2570,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2580,7 +2580,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2590,7 +2590,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2600,7 +2600,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -2612,7 +2612,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2624,7 +2624,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2634,7 +2634,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2644,7 +2644,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2656,7 +2656,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2666,7 +2666,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2678,7 +2678,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2688,7 +2688,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2698,7 +2698,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2708,7 +2708,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2718,7 +2718,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2728,7 +2728,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2740,7 +2740,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2752,7 +2752,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2762,7 +2762,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2772,7 +2772,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -2784,7 +2784,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2796,7 +2796,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2806,7 +2806,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2816,7 +2816,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2828,8 +2828,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| RM Sz16; Unknown "SREG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz16; Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -2838,8 +2838,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "R16/R32/M16"; Unknown "SREG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "R16/R32/M16"; Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -2848,8 +2848,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| RMdiff(Sz64, Sz16); Unknown "SREG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz64, Sz16); Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -2860,7 +2860,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2870,7 +2870,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2880,7 +2880,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -2892,8 +2892,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "SREG"; RM Sz16 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Sreg; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -2902,8 +2902,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "SREG"; RM Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Sreg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -2914,7 +2914,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -2924,7 +2924,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -2934,7 +2934,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -3107,7 +3107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "PTR16:16" |] + Operands = [| Far Sz16 |] OpEn = OpEn.D Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -3117,7 +3117,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "PTR16:32" |] + Operands = [| Far Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -3148,7 +3148,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -3158,7 +3158,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -3168,7 +3168,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -3178,7 +3178,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -3287,7 +3287,7 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.Invalid + Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) @@ -3299,7 +3299,7 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.Invalid + Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) @@ -3309,7 +3309,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Unknown "MOFFS8" |] + Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3319,7 +3319,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Unknown "MOFFS8" |] + Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -3331,7 +3331,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Unknown "MOFFS16" |] + Operands = [| FixedReg(Register.AX, Explicit); Moffs Sz16 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3341,7 +3341,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Unknown "MOFFS32" |] + Operands = [| FixedReg(Register.EAX, Explicit); Moffs Sz32 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3351,7 +3351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Unknown "MOFFS64" |] + Operands = [| FixedReg(Register.RAX, Explicit); Moffs Sz64 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -3363,7 +3363,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS8"; FixedReg(Register.AL, Explicit) |] + Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3373,7 +3373,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS8"; FixedReg(Register.AL, Explicit) |] + Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -3385,7 +3385,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS16"; FixedReg(Register.AX, Explicit) |] + Operands = [| Moffs Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3395,7 +3395,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS32"; FixedReg(Register.EAX, Explicit) |] + Operands = [| Moffs Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -3405,7 +3405,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "MOFFS64"; FixedReg(Register.RAX, Explicit) |] + Operands = [| Moffs Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -3952,7 +3952,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -3962,7 +3962,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -3972,7 +3972,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -3982,7 +3982,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -3992,7 +3992,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4002,7 +4002,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4012,7 +4012,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4022,7 +4022,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4034,7 +4034,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4044,7 +4044,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4054,7 +4054,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4064,7 +4064,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4074,7 +4074,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4084,7 +4084,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4094,7 +4094,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4104,7 +4104,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4114,7 +4114,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4124,7 +4124,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4134,7 +4134,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4144,7 +4144,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4154,7 +4154,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4164,7 +4164,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4174,7 +4174,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4184,7 +4184,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4194,7 +4194,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4204,7 +4204,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4214,7 +4214,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4224,7 +4224,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4234,7 +4234,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4244,7 +4244,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4254,7 +4254,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4264,7 +4264,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4300,7 +4300,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16:16" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -4310,7 +4310,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M16:32" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -4322,7 +4322,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16:16" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -4332,7 +4332,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M16:32" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid @@ -4344,7 +4344,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4366,7 +4366,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4376,7 +4376,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4386,7 +4386,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -4396,7 +4396,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Rel Sz16 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -4406,33 +4406,13 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Rel Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } |] [| // index 200(0xC8) - { OpcodeByte = 200u - Opcode = Opcode.ENTER - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; FixedImm 0 |] - OpEn = OpEn.II - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 200u - Opcode = Opcode.ENTER - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; FixedImm 1 |] - OpEn = OpEn.II - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } { OpcodeByte = 200u Opcode = Opcode.ENTER PrefixType = Legacy NP @@ -4574,7 +4554,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4584,7 +4564,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4594,7 +4574,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4604,7 +4584,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4614,7 +4594,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4624,7 +4604,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4634,7 +4614,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4644,7 +4624,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4656,7 +4636,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4666,7 +4646,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4676,7 +4656,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4686,7 +4666,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4696,7 +4676,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4706,7 +4686,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4716,7 +4696,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4726,7 +4706,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4736,7 +4716,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4746,7 +4726,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4756,7 +4736,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4766,7 +4746,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4776,7 +4756,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4786,7 +4766,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4796,7 +4776,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4806,7 +4786,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4816,7 +4796,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4826,7 +4806,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4836,7 +4816,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4846,7 +4826,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4856,7 +4836,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4866,7 +4846,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4876,7 +4856,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4886,7 +4866,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid @@ -4898,7 +4878,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4908,7 +4888,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4918,7 +4898,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4928,7 +4908,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4938,7 +4918,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4948,7 +4928,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4958,7 +4938,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4968,7 +4948,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4980,7 +4960,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -4990,7 +4970,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5000,7 +4980,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5010,7 +4990,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5020,7 +5000,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5030,7 +5010,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5040,7 +5020,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5050,7 +5030,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5060,7 +5040,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5070,7 +5050,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5080,7 +5060,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5090,7 +5070,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5100,7 +5080,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5110,7 +5090,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5120,7 +5100,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5130,7 +5110,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5140,7 +5120,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5150,7 +5130,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5160,7 +5140,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5170,7 +5150,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5180,7 +5160,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5190,7 +5170,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5200,7 +5180,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5210,7 +5190,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid @@ -5310,7 +5290,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5330,7 +5310,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5360,7 +5340,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5390,7 +5370,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5410,7 +5390,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5430,7 +5410,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5450,7 +5430,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5470,7 +5450,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5552,7 +5532,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5642,7 +5622,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5652,7 +5632,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5742,7 +5722,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5752,7 +5732,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5762,7 +5742,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5772,7 +5752,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5854,7 +5834,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5904,7 +5884,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5914,7 +5894,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5924,7 +5904,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5934,7 +5914,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5944,7 +5924,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5954,7 +5934,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5964,7 +5944,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6056,7 +6036,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6076,7 +6056,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6086,7 +6066,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6096,7 +6076,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6106,7 +6086,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6116,7 +6096,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6128,8 +6108,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6148,8 +6128,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6158,8 +6138,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp3 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6168,8 +6148,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6188,8 +6168,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp7 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6208,8 +6188,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6228,8 +6208,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6248,8 +6228,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp5 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6280,7 +6260,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6290,8 +6270,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6300,7 +6280,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6310,7 +6290,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6320,8 +6300,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6340,8 +6320,8 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "M64FP" |] + ModRM = ModRMType.ModRMOp3 OpRegMem + Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -6360,7 +6340,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6432,7 +6412,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6472,7 +6452,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6502,7 +6482,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6512,7 +6492,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6522,7 +6502,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6552,7 +6532,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6582,7 +6562,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6612,7 +6592,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6624,7 +6604,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6634,7 +6614,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6664,7 +6644,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6674,7 +6654,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6684,7 +6664,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6694,7 +6674,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6704,7 +6684,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6714,7 +6694,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6917,7 +6897,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "PTR16:16" |] + Operands = [| Far Sz16 |] OpEn = OpEn.S Mode64 = Mode64.Inv Compat = CompatLegMode.Valid } @@ -6927,7 +6907,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "PTR16:32" |] + Operands = [| Far Sz32 |] OpEn = OpEn.S Mode64 = Mode64.Inv Compat = CompatLegMode.Valid } @@ -7110,7 +7090,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7120,7 +7100,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7130,7 +7110,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7140,7 +7120,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7150,7 +7130,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7160,7 +7140,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7170,7 +7150,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -7182,7 +7162,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7192,7 +7172,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7202,7 +7182,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7212,7 +7192,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7222,7 +7202,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7232,7 +7212,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7242,7 +7222,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7252,7 +7232,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7262,7 +7242,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7272,7 +7252,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7282,7 +7262,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7292,7 +7272,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7302,7 +7282,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7312,7 +7292,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7322,7 +7302,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7332,7 +7312,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7342,7 +7322,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7352,7 +7332,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7362,7 +7342,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -7372,7 +7352,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -7382,7 +7362,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -7466,7 +7446,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7476,7 +7456,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7488,7 +7468,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7498,7 +7478,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7508,7 +7488,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7518,7 +7498,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Unknown "M16:16" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7528,7 +7508,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Unknown "M16:32" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7538,7 +7518,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Unknown "M16:64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7548,7 +7528,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7558,7 +7538,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7568,7 +7548,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7578,7 +7558,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7588,7 +7568,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7598,7 +7578,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7608,7 +7588,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.NS @@ -7618,7 +7598,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NS @@ -7628,7 +7608,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7638,7 +7618,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "M16:16" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7648,7 +7628,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "M16:32" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7658,7 +7638,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "M16:64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7668,7 +7648,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7678,7 +7658,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7688,7 +7668,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7704,7 +7684,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7714,7 +7694,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7724,7 +7704,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7734,7 +7714,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7744,7 +7724,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7754,7 +7734,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7766,17 +7746,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 202uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.CLUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEEuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7786,7 +7766,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7796,7 +7776,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Unknown "M16&32" |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7806,7 +7786,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Unknown "M16&32" |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7816,7 +7796,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Unknown "M16&64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7826,7 +7806,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Unknown "M16&64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7836,7 +7816,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7846,7 +7826,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 200uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -7856,27 +7836,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 201uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.PCONFIG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC5uy Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.RDMSRLIST PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC6uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7886,7 +7866,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 238uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7896,7 +7876,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 249uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -7906,7 +7886,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -7916,17 +7896,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEAuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.SERIALIZE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7936,7 +7916,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7946,7 +7926,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7956,7 +7936,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7966,7 +7946,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7976,7 +7956,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RMdiff(Sz32, Sz16) |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7986,7 +7966,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RMdiff(Sz64, Sz16) |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7996,17 +7976,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 203uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.STUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEFuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8016,47 +7996,47 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 248uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.TESTUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEDuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.UIRET PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xECuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.WRMSRLIST PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC6uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.WRMSRNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC6uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8066,7 +8046,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 239uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8076,7 +8056,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 213uy Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8086,17 +8066,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 208uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.XRESLDTRK PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8106,17 +8086,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 209uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.XSUSLDTRK PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8126,7 +8106,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 214uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8138,7 +8118,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -8148,17 +8128,17 @@ let (norTwo: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 2u Opcode = Opcode.LAR - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz64, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -8167,20 +8147,20 @@ let (norTwo: InstructionCore[][]) = [| // index 3(0x03) { OpcodeByte = 3u Opcode = Opcode.LSL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.LSL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -8190,7 +8170,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -8300,7 +8280,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8310,7 +8290,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8326,8 +8306,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -8336,7 +8316,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8346,7 +8326,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8356,7 +8336,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8366,7 +8346,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8376,7 +8356,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8388,7 +8368,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8398,7 +8378,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8408,7 +8388,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -8418,7 +8398,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -8430,7 +8410,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8440,7 +8420,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8450,7 +8430,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8460,7 +8440,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8470,7 +8450,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8482,7 +8462,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8492,7 +8472,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8504,7 +8484,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8514,7 +8494,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8526,7 +8506,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8536,7 +8516,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8548,7 +8528,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8558,7 +8538,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8568,7 +8548,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8578,7 +8558,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8590,7 +8570,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8600,7 +8580,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -8612,7 +8592,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8622,7 +8602,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8632,7 +8612,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8642,7 +8622,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8652,7 +8632,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8662,7 +8642,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -8676,7 +8656,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8686,7 +8666,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8696,7 +8676,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8706,7 +8686,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8716,7 +8696,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; Unknown "MIB" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8726,7 +8706,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; BM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8736,7 +8716,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; BM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8748,7 +8728,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8758,7 +8738,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8768,7 +8748,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8778,7 +8758,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -8788,7 +8768,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BM Sz64; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -8798,7 +8778,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| BM Sz128; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -8808,7 +8788,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "MIB"; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -8820,7 +8800,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8834,7 +8814,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFBuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8844,7 +8824,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFAuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8854,7 +8834,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -8864,7 +8844,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -8876,7 +8856,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -8886,7 +8866,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -8898,8 +8878,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Unknown "CR0–CR7" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Unknown "CR0?CR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8908,8 +8888,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Unknown "CR0–CR7" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz64; Unknown "CR0?CR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8918,7 +8898,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz64; Unknown "CR8" |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -8930,8 +8910,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Unknown "DR0–DR7" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Unknown "DR0?DR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8940,8 +8920,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Unknown "DR0–DR7" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz64; Unknown "DR0?DR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8952,8 +8932,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "CR0?CR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8962,8 +8942,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "CR0?CR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8972,7 +8952,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Unknown "CR8"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -8984,8 +8964,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "DR0?DR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8994,8 +8974,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "DR0?DR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -9014,7 +8994,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9024,7 +9004,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9036,7 +9016,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -9046,7 +9026,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -9058,8 +9038,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -9068,8 +9048,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -9078,8 +9058,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "R32/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -9088,7 +9068,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9098,7 +9078,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9108,7 +9088,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9120,8 +9100,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -9130,8 +9110,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -9142,7 +9122,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9152,7 +9132,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9162,7 +9142,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9172,7 +9152,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9182,7 +9162,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9192,7 +9172,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9204,7 +9184,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -9214,7 +9194,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9224,7 +9204,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9234,7 +9214,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9244,7 +9224,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9254,7 +9234,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9266,7 +9246,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9276,7 +9256,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9288,7 +9268,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9298,7 +9278,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -9489,20 +9469,20 @@ let (norTwo: InstructionCore[][]) = [| // index 64(0x40) { OpcodeByte = 64u Opcode = Opcode.CMOVO - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.CMOVO - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9512,7 +9492,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9521,20 +9501,20 @@ let (norTwo: InstructionCore[][]) = [| // index 65(0x41) { OpcodeByte = 65u Opcode = Opcode.CMOVNO - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 65u Opcode = Opcode.CMOVNO - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9544,7 +9524,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9553,20 +9533,20 @@ let (norTwo: InstructionCore[][]) = [| // index 66(0x42) { OpcodeByte = 66u Opcode = Opcode.CMOVB - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.CMOVB - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9576,27 +9556,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 66u Opcode = Opcode.CMOVC - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.CMOVC - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9606,27 +9586,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 66u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9636,7 +9616,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9645,20 +9625,20 @@ let (norTwo: InstructionCore[][]) = [| // index 67(0x43) { OpcodeByte = 67u Opcode = Opcode.CMOVAE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.CMOVAE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9668,27 +9648,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 67u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9698,27 +9678,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 67u Opcode = Opcode.CMOVNC - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.CMOVNC - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9728,7 +9708,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9737,20 +9717,20 @@ let (norTwo: InstructionCore[][]) = [| // index 68(0x44) { OpcodeByte = 68u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9760,27 +9740,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 68u Opcode = Opcode.CMOVZ - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.CMOVZ - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9790,7 +9770,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9799,20 +9779,20 @@ let (norTwo: InstructionCore[][]) = [| // index 69(0x45) { OpcodeByte = 69u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9822,27 +9802,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9852,7 +9832,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9861,20 +9841,20 @@ let (norTwo: InstructionCore[][]) = [| // index 70(0x46) { OpcodeByte = 70u Opcode = Opcode.CMOVBE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.CMOVBE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9884,27 +9864,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 70u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9914,7 +9894,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9923,20 +9903,20 @@ let (norTwo: InstructionCore[][]) = [| // index 71(0x47) { OpcodeByte = 71u Opcode = Opcode.CMOVA - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.CMOVA - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9946,27 +9926,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 71u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9976,7 +9956,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -9985,20 +9965,20 @@ let (norTwo: InstructionCore[][]) = [| // index 72(0x48) { OpcodeByte = 72u Opcode = Opcode.CMOVS - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 72u Opcode = Opcode.CMOVS - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10008,7 +9988,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10017,20 +9997,20 @@ let (norTwo: InstructionCore[][]) = [| // index 73(0x49) { OpcodeByte = 73u Opcode = Opcode.CMOVNS - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 73u Opcode = Opcode.CMOVNS - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10040,7 +10020,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10049,20 +10029,20 @@ let (norTwo: InstructionCore[][]) = [| // index 74(0x4A) { OpcodeByte = 74u Opcode = Opcode.CMOVP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.CMOVP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10072,27 +10052,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 74u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10102,7 +10082,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10111,20 +10091,20 @@ let (norTwo: InstructionCore[][]) = [| // index 75(0x4B) { OpcodeByte = 75u Opcode = Opcode.CMOVNP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.CMOVNP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10134,27 +10114,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 75u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10164,7 +10144,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10173,20 +10153,20 @@ let (norTwo: InstructionCore[][]) = [| // index 76(0x4C) { OpcodeByte = 76u Opcode = Opcode.CMOVL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.CMOVL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10196,27 +10176,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 76u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10226,7 +10206,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10235,20 +10215,20 @@ let (norTwo: InstructionCore[][]) = [| // index 77(0x4D) { OpcodeByte = 77u Opcode = Opcode.CMOVGE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 77u Opcode = Opcode.CMOVGE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10258,27 +10238,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 77u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 77u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10288,7 +10268,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10297,20 +10277,20 @@ let (norTwo: InstructionCore[][]) = [| // index 78(0x4E) { OpcodeByte = 78u Opcode = Opcode.CMOVLE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.CMOVLE - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10320,27 +10300,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } { OpcodeByte = 78u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10350,7 +10330,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10359,20 +10339,20 @@ let (norTwo: InstructionCore[][]) = [| // index 79(0x4F) { OpcodeByte = 79u Opcode = Opcode.CMOVG - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 79u Opcode = Opcode.CMOVG - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10382,27 +10362,27 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.VNE Compat = CompatLegMode.NA } { OpcodeByte = 79u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 79u Opcode = Opcode.InvalOP - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10412,7 +10392,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -10424,8 +10404,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -10434,8 +10414,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -10446,7 +10426,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10456,7 +10436,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10466,7 +10446,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10476,7 +10456,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10488,7 +10468,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -10498,7 +10478,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -10510,7 +10490,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -10520,7 +10500,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -10532,7 +10512,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10542,7 +10522,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10554,7 +10534,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10564,7 +10544,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10576,7 +10556,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10586,7 +10566,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10598,7 +10578,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10608,7 +10588,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10620,7 +10600,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10630,7 +10610,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10640,7 +10620,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10650,7 +10630,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10662,7 +10642,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10672,7 +10652,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10682,7 +10662,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10692,7 +10672,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10704,7 +10684,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10714,7 +10694,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10724,7 +10704,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10734,7 +10714,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10746,7 +10726,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10756,7 +10736,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10766,7 +10746,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10778,7 +10758,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10788,7 +10768,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10798,7 +10778,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10808,7 +10788,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10820,7 +10800,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10830,7 +10810,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10840,7 +10820,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10850,7 +10830,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10862,7 +10842,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10872,7 +10852,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10882,7 +10862,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10892,7 +10872,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10904,7 +10884,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10914,7 +10894,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10924,7 +10904,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10934,7 +10914,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10946,8 +10926,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -10956,7 +10936,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10968,8 +10948,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -10978,7 +10958,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -10990,8 +10970,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11000,7 +10980,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11012,8 +10992,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11022,7 +11002,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11034,8 +11014,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11044,7 +11024,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11056,8 +11036,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11066,7 +11046,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11078,8 +11058,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11088,7 +11068,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11100,8 +11080,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11110,7 +11090,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11122,8 +11102,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11132,7 +11112,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11144,8 +11124,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11154,7 +11134,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11166,8 +11146,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11176,7 +11156,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11188,8 +11168,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11198,7 +11178,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11210,7 +11190,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11222,7 +11202,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11234,7 +11214,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11244,7 +11224,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11254,7 +11234,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11264,7 +11244,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11276,7 +11256,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11286,7 +11266,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11296,8 +11276,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11308,7 +11288,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11318,7 +11298,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11328,7 +11308,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11338,8 +11318,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -11350,8 +11330,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "MM1"; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11360,7 +11340,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11370,7 +11350,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11380,7 +11360,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11390,7 +11370,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11400,7 +11380,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11412,7 +11392,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11422,7 +11402,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11432,7 +11412,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11442,7 +11422,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11452,7 +11432,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11462,7 +11442,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11474,7 +11454,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11484,7 +11464,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11494,7 +11474,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11504,7 +11484,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11514,7 +11494,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11524,7 +11504,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11536,8 +11516,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11546,7 +11526,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11558,8 +11538,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11568,7 +11548,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11580,8 +11560,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -11590,7 +11570,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11622,7 +11602,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -11632,7 +11612,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -11644,7 +11624,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -11654,7 +11634,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -11666,7 +11646,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11676,7 +11656,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11686,7 +11666,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11696,7 +11676,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11706,7 +11686,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -11718,7 +11698,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11728,7 +11708,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -11738,8 +11718,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM/M64"; MMXReg |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MM Sz64; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -12735,7 +12715,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "FS" |] + Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -12747,7 +12727,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "FS" |] + Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -12757,7 +12737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "FS" |] + Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -12767,7 +12747,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "FS" |] + Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -12790,7 +12770,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12800,7 +12780,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12810,7 +12790,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12822,7 +12802,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -12832,7 +12812,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -12842,7 +12822,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -12854,7 +12834,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -12864,7 +12844,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -12874,7 +12854,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -12891,7 +12871,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "GS" |] + Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -12903,7 +12883,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "GS" |] + Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -12913,7 +12893,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "GS" |] + Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -12923,7 +12903,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "GS" |] + Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -12946,7 +12926,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12956,7 +12936,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12966,7 +12946,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -12978,7 +12958,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -12988,7 +12968,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -12998,7 +12978,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -13010,7 +12990,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -13020,7 +13000,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -13030,7 +13010,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -13042,7 +13022,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13052,7 +13032,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13062,7 +13042,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13072,7 +13052,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13082,8 +13062,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M512BYTE" |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13092,8 +13072,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M512BYTE" |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -13102,8 +13082,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M512BYTE" |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13112,8 +13092,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "M512BYTE" |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -13122,7 +13102,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -13132,7 +13112,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -13142,7 +13122,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13152,7 +13132,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 232uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -13162,7 +13142,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 240uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -13172,7 +13152,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Unknown "R64/M64" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -13182,8 +13162,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "R32/M32" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13192,7 +13172,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13202,7 +13182,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13212,7 +13192,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13222,7 +13202,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13232,7 +13212,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 248uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -13242,7 +13222,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13252,7 +13232,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13262,7 +13242,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "R16/R32/R64" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13272,7 +13252,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13282,7 +13262,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13292,7 +13272,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13302,7 +13282,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13312,7 +13292,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13322,8 +13302,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp5 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13332,8 +13312,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp5 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13342,8 +13322,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13352,8 +13332,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13362,8 +13342,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13372,8 +13352,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -13381,20 +13361,20 @@ let (norTwo: InstructionCore[][]) = [| // index 175(0xAF) { OpcodeByte = 175u Opcode = Opcode.IMUL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 175u Opcode = Opcode.IMUL - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13404,7 +13384,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13416,7 +13396,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13428,7 +13408,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13438,7 +13418,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13448,7 +13428,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13460,7 +13440,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16:16" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13470,7 +13450,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M16:32" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13480,7 +13460,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Unknown "M16:64" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13492,7 +13472,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13502,7 +13482,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13512,7 +13492,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13524,7 +13504,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16:16" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13534,7 +13514,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M16:32" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13544,7 +13524,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Unknown "M16:64" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13556,7 +13536,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Unknown "M16:16" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13566,7 +13546,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "M16:32" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13576,7 +13556,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Unknown "M16:64" |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13585,30 +13565,30 @@ let (norTwo: InstructionCore[][]) = [| // index 182(0xB6) { OpcodeByte = 182u Opcode = Opcode.MOVZX - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.MOVZX - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.MOVZX - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13620,7 +13600,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13630,7 +13610,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13642,7 +13622,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13652,7 +13632,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13662,7 +13642,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13674,7 +13654,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13686,7 +13666,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13696,7 +13676,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13706,7 +13686,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13716,7 +13696,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13726,7 +13706,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13736,7 +13716,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13746,7 +13726,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13756,7 +13736,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13766,7 +13746,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13776,7 +13756,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13786,7 +13766,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13796,7 +13776,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid @@ -13808,7 +13788,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13818,7 +13798,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13828,7 +13808,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -13837,30 +13817,30 @@ let (norTwo: InstructionCore[][]) = [| // index 188(0xBC) { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13870,7 +13850,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13880,7 +13860,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13890,7 +13870,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -13902,7 +13882,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13912,7 +13892,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13922,7 +13902,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13932,7 +13912,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -13942,7 +13922,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -13952,7 +13932,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -13961,20 +13941,20 @@ let (norTwo: InstructionCore[][]) = [| // index 190(0xBE) { OpcodeByte = 190u Opcode = Opcode.MOVSX - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.MOVSX - PrefixType = Mandatory NP + PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13984,7 +13964,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -13996,7 +13976,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -14006,7 +13986,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -14018,7 +13998,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -14030,7 +14010,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -14040,7 +14020,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -14050,7 +14030,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -14062,7 +14042,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14072,7 +14052,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14082,7 +14062,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14092,7 +14072,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14104,7 +14084,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -14114,7 +14094,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -14126,7 +14106,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14136,7 +14116,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14148,8 +14128,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; MMXReg; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; MMXReg; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14158,8 +14138,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14170,7 +14150,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14180,7 +14160,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14192,7 +14172,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -14202,8 +14182,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "M128" |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Mem Sz128 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -14212,7 +14192,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -14222,7 +14202,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -14232,7 +14212,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz16 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14242,7 +14222,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14252,7 +14232,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14262,7 +14242,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz16 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14272,7 +14252,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14282,7 +14262,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -14292,8 +14272,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "REG" |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14302,8 +14282,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp3 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14312,8 +14292,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp3 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14322,8 +14302,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14332,8 +14312,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14342,8 +14322,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp5 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14352,8 +14332,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 - Operands = [| Unknown "MEM" |] + ModRM = ModRMType.ModRMOp5 OpRegMem + Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14400,7 +14380,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -14410,7 +14390,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -14422,8 +14402,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14432,7 +14412,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14444,8 +14424,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14454,7 +14434,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14466,8 +14446,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14476,7 +14456,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14488,8 +14468,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14498,7 +14478,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14510,8 +14490,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14520,7 +14500,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14532,7 +14512,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -14542,7 +14522,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -14552,7 +14532,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -14564,8 +14544,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; MMXReg |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14574,8 +14554,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14586,8 +14566,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14596,7 +14576,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14608,8 +14588,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14618,7 +14598,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14630,8 +14610,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14640,7 +14620,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14652,8 +14632,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14662,7 +14642,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14674,8 +14654,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14684,7 +14664,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14696,8 +14676,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14706,7 +14686,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14718,8 +14698,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14728,7 +14708,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14740,8 +14720,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14750,7 +14730,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14762,8 +14742,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14772,7 +14752,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14784,8 +14764,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14794,7 +14774,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14806,8 +14786,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14816,7 +14796,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14828,8 +14808,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14838,7 +14818,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14850,8 +14830,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14860,7 +14840,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14872,8 +14852,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14882,7 +14862,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14894,7 +14874,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14904,7 +14884,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14914,7 +14894,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14926,8 +14906,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14936,7 +14916,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -14948,8 +14928,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14958,7 +14938,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14970,8 +14950,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -14980,7 +14960,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -14992,8 +14972,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15002,7 +14982,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15014,8 +14994,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15024,7 +15004,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15036,8 +15016,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15046,7 +15026,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15058,8 +15038,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15068,7 +15048,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15080,8 +15060,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15090,7 +15070,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15102,8 +15082,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15112,7 +15092,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15124,8 +15104,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "MEM" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15136,8 +15116,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15146,7 +15126,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15158,8 +15138,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15168,7 +15148,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15180,8 +15160,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15190,7 +15170,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15202,8 +15182,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15212,7 +15192,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15224,8 +15204,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15234,7 +15214,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15246,8 +15226,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15256,7 +15236,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15268,7 +15248,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15278,8 +15258,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -15290,8 +15270,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15300,7 +15280,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15312,8 +15292,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15322,7 +15302,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15334,8 +15314,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15344,7 +15324,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15356,8 +15336,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15366,7 +15346,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15378,8 +15358,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15388,7 +15368,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15400,8 +15380,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15410,7 +15390,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15422,8 +15402,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| MMXReg; Unknown "MM/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15432,7 +15412,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15444,7 +15424,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -15460,8 +15440,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15470,7 +15450,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15482,8 +15462,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15492,7 +15472,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15504,8 +15484,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15514,7 +15494,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15526,8 +15506,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15536,7 +15516,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15548,8 +15528,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15558,7 +15538,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15570,8 +15550,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15580,7 +15560,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15592,8 +15572,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15602,7 +15582,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15614,8 +15594,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15624,7 +15604,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15636,8 +15616,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15646,7 +15626,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15658,8 +15638,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15668,7 +15648,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15680,8 +15660,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15690,7 +15670,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15702,8 +15682,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15712,7 +15692,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15732,7 +15712,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15750,7 +15730,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.None @@ -15762,7 +15742,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.None @@ -15776,7 +15756,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -15796,8 +15776,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15806,7 +15786,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15818,8 +15798,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15828,7 +15808,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15840,8 +15820,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15850,7 +15830,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15864,7 +15844,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15876,7 +15856,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15888,7 +15868,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15900,7 +15880,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15912,7 +15892,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15924,7 +15904,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15940,7 +15920,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15952,7 +15932,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15964,8 +15944,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -15976,7 +15956,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -15996,7 +15976,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16008,7 +15988,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16020,7 +16000,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16032,7 +16012,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16044,7 +16024,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16056,7 +16036,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16070,7 +16050,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16082,7 +16062,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16094,7 +16074,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16106,7 +16086,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16118,7 +16098,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16130,7 +16110,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16142,7 +16122,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16154,7 +16134,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16166,7 +16146,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16178,7 +16158,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16190,7 +16170,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16330,8 +16310,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz32; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16340,8 +16320,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz64; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz64; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16490,7 +16470,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16502,7 +16482,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16514,7 +16494,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16526,7 +16506,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -16538,7 +16518,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16550,7 +16530,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16564,7 +16544,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16603,7 +16583,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512"; Unknown "" |] + Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16623,7 +16603,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512"; Unknown "" |] + Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16638,7 +16618,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16650,7 +16630,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16692,7 +16672,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16704,7 +16684,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16715,7 +16695,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M512" |] + Operands = [| Reg Sz128; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16727,7 +16707,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M512" |] + Operands = [| Reg Sz128; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16736,7 +16716,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -16780,7 +16760,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -16790,7 +16770,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -16800,7 +16780,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16810,7 +16790,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16820,7 +16800,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16832,7 +16812,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -16842,7 +16822,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -16852,7 +16832,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -16862,7 +16842,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -16872,7 +16852,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -16882,7 +16862,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -16922,7 +16902,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16932,7 +16912,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16942,7 +16922,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16952,7 +16932,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -16987,7 +16967,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "R32/R64"; Unknown "M512" |] + Operands = [| Unknown "R32/R64"; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -16997,7 +16977,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "R32/R64"; Unknown "M512" |] + Operands = [| Unknown "R32/R64"; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17006,8 +16986,8 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "R16/R32/R64"; Unknown "M512" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Unknown "R16/R32/R64"; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17018,7 +16998,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17028,7 +17008,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17092,7 +17072,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17104,7 +17084,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17116,7 +17096,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17128,7 +17108,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17140,7 +17120,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17152,7 +17132,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17164,7 +17144,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17176,8 +17156,8 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "MM1"; Unknown "MM2/M64"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| MMXReg; MM Sz64; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17186,7 +17166,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17206,8 +17186,8 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17218,8 +17198,8 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17230,7 +17210,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17240,7 +17220,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17252,8 +17232,8 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17280,8 +17260,8 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -17292,7 +17272,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17304,7 +17284,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17314,7 +17294,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17384,7 +17364,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17396,7 +17376,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17408,7 +17388,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17422,7 +17402,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17488,7 +17468,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17500,7 +17480,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17512,7 +17492,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -17524,7 +17504,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -17744,7 +17724,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17758,7 +17738,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17770,7 +17750,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17812,7 +17792,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -17934,7 +17914,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -17944,7 +17924,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -17954,7 +17934,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -17964,7 +17944,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -17974,7 +17954,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17984,7 +17964,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -17994,7 +17974,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18004,7 +17984,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18016,7 +17996,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -18026,7 +18006,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18036,7 +18016,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -18046,7 +18026,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18056,7 +18036,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18066,7 +18046,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18076,7 +18056,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18086,7 +18066,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18098,7 +18078,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18108,7 +18088,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18118,7 +18098,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -18128,7 +18108,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18138,7 +18118,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18148,7 +18128,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18158,7 +18138,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18170,7 +18150,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18180,7 +18160,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18192,7 +18172,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18202,7 +18182,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18212,7 +18192,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18222,7 +18202,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18234,7 +18214,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18244,7 +18224,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18254,7 +18234,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18264,7 +18244,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18276,7 +18256,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18286,7 +18266,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18296,7 +18276,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -18306,7 +18286,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18316,7 +18296,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18328,7 +18308,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18338,7 +18318,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -18382,7 +18362,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18392,7 +18372,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18402,7 +18382,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18412,7 +18392,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18424,7 +18404,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18434,7 +18414,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18444,7 +18424,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18454,7 +18434,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18466,7 +18446,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18476,7 +18456,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18486,7 +18466,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18496,7 +18476,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18508,8 +18488,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -18518,8 +18498,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -18528,8 +18508,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -18538,8 +18518,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -18550,7 +18530,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18560,7 +18540,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -18570,7 +18550,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18580,7 +18560,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18592,7 +18572,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18602,7 +18582,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18612,7 +18592,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18622,7 +18602,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18634,7 +18614,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18644,7 +18624,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18656,7 +18636,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18666,7 +18646,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -18712,7 +18692,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18722,7 +18702,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18732,7 +18712,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18742,7 +18722,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18754,7 +18734,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18764,7 +18744,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18774,7 +18754,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18784,7 +18764,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18798,7 +18778,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -18808,7 +18788,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -18818,7 +18798,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -18828,7 +18808,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -18840,7 +18820,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18850,7 +18830,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18860,7 +18840,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18870,7 +18850,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18882,7 +18862,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18892,7 +18872,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18902,7 +18882,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18912,7 +18892,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18924,7 +18904,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18934,7 +18914,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18944,7 +18924,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18954,7 +18934,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18970,7 +18950,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18980,7 +18960,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -18990,7 +18970,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -19000,7 +18980,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -19012,7 +18992,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -19022,7 +19002,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -19032,7 +19012,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.None @@ -19052,8 +19032,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -19062,8 +19042,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -19072,8 +19052,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -19082,8 +19062,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -19094,7 +19074,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19104,7 +19084,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19114,7 +19094,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19124,7 +19104,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19134,7 +19114,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19144,7 +19124,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19156,7 +19136,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -19166,7 +19146,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -19176,7 +19156,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -19188,7 +19168,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -19198,7 +19178,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -19208,7 +19188,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -19220,7 +19200,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19230,7 +19210,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19240,7 +19220,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19250,7 +19230,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19262,7 +19242,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19272,7 +19252,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19282,7 +19262,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19292,7 +19272,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19304,7 +19284,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19314,7 +19294,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19324,7 +19304,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19334,7 +19314,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19346,7 +19326,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19356,7 +19336,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19366,7 +19346,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19376,7 +19356,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19388,7 +19368,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19398,7 +19378,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19408,7 +19388,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19418,7 +19398,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19428,7 +19408,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19438,7 +19418,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19450,7 +19430,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19460,7 +19440,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19470,7 +19450,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19480,7 +19460,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19490,7 +19470,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19500,7 +19480,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19512,7 +19492,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19522,7 +19502,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19532,7 +19512,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19542,7 +19522,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19552,7 +19532,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19562,7 +19542,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19574,7 +19554,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19584,7 +19564,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19594,7 +19574,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19604,7 +19584,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19614,7 +19594,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19624,7 +19604,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -19636,7 +19616,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19646,7 +19626,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19656,7 +19636,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19666,7 +19646,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19676,7 +19656,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19686,7 +19666,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19698,7 +19678,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19708,7 +19688,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19718,7 +19698,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19728,7 +19708,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19738,7 +19718,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19748,7 +19728,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19760,7 +19740,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19770,7 +19750,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19780,7 +19760,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19790,7 +19770,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19800,7 +19780,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19810,7 +19790,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19822,7 +19802,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19832,7 +19812,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19842,7 +19822,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19852,7 +19832,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19862,7 +19842,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19872,7 +19852,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19884,7 +19864,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19894,7 +19874,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19906,7 +19886,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19916,7 +19896,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19928,7 +19908,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19938,7 +19918,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19950,7 +19930,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19960,7 +19940,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19972,7 +19952,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19982,7 +19962,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -19994,7 +19974,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20004,7 +19984,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20016,7 +19996,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20026,7 +20006,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20038,7 +20018,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20048,7 +20028,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20060,7 +20040,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20070,7 +20050,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20082,7 +20062,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20092,7 +20072,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20104,7 +20084,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20114,7 +20094,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20126,7 +20106,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20136,7 +20116,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20148,7 +20128,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20158,7 +20138,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20170,7 +20150,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20180,7 +20160,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20192,8 +20172,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "R32/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -20202,7 +20182,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "R64/M64" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20214,7 +20194,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20224,7 +20204,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20234,7 +20214,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20244,7 +20224,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20256,7 +20236,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20266,7 +20246,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20276,7 +20256,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20286,7 +20266,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20296,7 +20276,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20306,7 +20286,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20318,7 +20298,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20328,7 +20308,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20338,7 +20318,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20348,7 +20328,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20358,7 +20338,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20368,7 +20348,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20380,7 +20360,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20390,7 +20370,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20400,7 +20380,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20410,7 +20390,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp4 + ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20420,7 +20400,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20430,7 +20410,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20442,7 +20422,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20452,7 +20432,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20462,7 +20442,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20472,7 +20452,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20482,7 +20462,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20492,7 +20472,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20502,7 +20482,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20512,7 +20492,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -20524,7 +20504,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20534,7 +20514,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20546,7 +20526,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20556,7 +20536,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20568,7 +20548,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20578,7 +20558,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20620,7 +20600,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20630,7 +20610,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20640,7 +20620,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20650,7 +20630,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20662,7 +20642,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20672,7 +20652,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20682,7 +20662,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20692,7 +20672,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -20704,8 +20684,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "R32/M32"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -20714,7 +20694,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20724,7 +20704,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -20736,7 +20716,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20746,7 +20726,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20756,7 +20736,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20766,7 +20746,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -20810,7 +20790,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M16" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -20820,7 +20800,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M8" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -20830,7 +20810,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M64" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -20840,7 +20820,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M32" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -20852,7 +20832,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz16; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -20862,7 +20842,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz8; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -20872,7 +20852,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -20882,7 +20862,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -20894,7 +20874,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20904,7 +20884,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20914,7 +20894,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz64 |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20924,7 +20904,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20936,7 +20916,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20946,7 +20926,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20956,7 +20936,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20966,7 +20946,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20986,7 +20966,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -20996,7 +20976,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21006,7 +20986,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21016,7 +20996,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21028,7 +21008,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21038,7 +21018,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21048,7 +21028,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21058,7 +21038,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.None @@ -21110,7 +21090,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -21120,7 +21100,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -21170,7 +21150,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21180,7 +21160,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21190,7 +21170,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21200,7 +21180,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21210,7 +21190,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21220,7 +21200,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21234,7 +21214,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21246,8 +21226,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -21258,7 +21238,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21268,7 +21248,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21278,7 +21258,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21288,7 +21268,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21318,7 +21298,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -21328,7 +21308,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -21338,7 +21318,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -21348,7 +21328,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -21360,7 +21340,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21370,7 +21350,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21382,7 +21362,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21392,7 +21372,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21404,7 +21384,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21414,7 +21394,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21426,7 +21406,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21436,7 +21416,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21448,7 +21428,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21458,7 +21438,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21470,7 +21450,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21482,8 +21462,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -21492,8 +21472,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -21504,7 +21484,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21514,7 +21494,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21526,7 +21506,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21536,7 +21516,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21548,7 +21528,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21558,7 +21538,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21570,7 +21550,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21580,7 +21560,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21592,7 +21572,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21602,7 +21582,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21614,7 +21594,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21624,7 +21604,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21636,7 +21616,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21646,7 +21626,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21658,7 +21638,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21668,7 +21648,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21680,7 +21660,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21690,7 +21670,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21702,7 +21682,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21712,7 +21692,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21724,7 +21704,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21734,7 +21714,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -21746,7 +21726,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21756,7 +21736,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21768,7 +21748,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21778,7 +21758,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21790,7 +21770,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21800,7 +21780,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21812,7 +21792,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21822,7 +21802,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21832,7 +21812,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21842,7 +21822,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21852,7 +21832,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21862,7 +21842,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -21874,8 +21854,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -21884,8 +21864,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -21896,7 +21876,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21906,7 +21886,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21918,7 +21898,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21928,7 +21908,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21940,7 +21920,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21950,7 +21930,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21962,7 +21942,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21972,7 +21952,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21984,7 +21964,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -21994,7 +21974,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22006,7 +21986,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22016,7 +21996,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22028,7 +22008,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22038,7 +22018,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22050,7 +22030,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22060,7 +22040,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22072,8 +22052,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -22082,8 +22062,8 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -22094,7 +22074,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22104,7 +22084,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22116,7 +22096,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22126,7 +22106,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22138,7 +22118,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22148,7 +22128,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -22160,7 +22140,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22170,7 +22150,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22182,7 +22162,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22192,7 +22172,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22204,7 +22184,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22214,7 +22194,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22226,7 +22206,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22238,7 +22218,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22248,7 +22228,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22260,7 +22240,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22270,7 +22250,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22282,7 +22262,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22292,7 +22272,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22304,7 +22284,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22314,7 +22294,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22326,7 +22306,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22336,7 +22316,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22348,7 +22328,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22358,7 +22338,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22370,7 +22350,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22380,7 +22360,7 @@ let (vexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22398,7 +22378,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22408,7 +22388,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22420,7 +22400,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22430,7 +22410,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22442,7 +22422,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22452,7 +22432,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22464,7 +22444,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22474,7 +22454,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22486,7 +22466,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22496,7 +22476,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22508,7 +22488,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22518,7 +22498,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22530,7 +22510,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22540,7 +22520,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22552,7 +22532,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22562,7 +22542,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22574,7 +22554,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22584,7 +22564,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22596,7 +22576,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22606,7 +22586,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22618,7 +22598,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22628,7 +22608,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -22640,7 +22620,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22650,7 +22630,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -22662,7 +22642,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22672,7 +22652,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22684,7 +22664,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22694,7 +22674,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22706,7 +22686,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22716,7 +22696,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22728,7 +22708,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22738,7 +22718,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22756,7 +22736,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22766,7 +22746,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22782,7 +22762,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22794,7 +22774,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22804,7 +22784,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -22816,7 +22796,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22826,7 +22806,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22836,7 +22816,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22846,7 +22826,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22858,7 +22838,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22868,7 +22848,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22880,8 +22860,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -22894,7 +22874,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22904,7 +22884,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22916,7 +22896,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22926,7 +22906,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22938,7 +22918,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22948,7 +22928,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22962,7 +22942,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22972,7 +22952,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22984,7 +22964,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -22994,7 +22974,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23006,7 +22986,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23016,7 +22996,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23028,7 +23008,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23038,7 +23018,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23050,7 +23030,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23060,7 +23040,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23072,7 +23052,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23082,7 +23062,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23098,7 +23078,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23108,7 +23088,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23120,7 +23100,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23130,7 +23110,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23142,8 +23122,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23152,8 +23132,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23164,7 +23144,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23174,7 +23154,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23186,8 +23166,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23196,8 +23176,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23208,8 +23188,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23218,8 +23198,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23230,8 +23210,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23240,8 +23220,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23252,8 +23232,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23262,8 +23242,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23274,7 +23254,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23284,7 +23264,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23296,7 +23276,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23306,7 +23286,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23318,7 +23298,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23328,7 +23308,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23340,7 +23320,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23350,7 +23330,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23362,7 +23342,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23372,7 +23352,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23384,7 +23364,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23394,7 +23374,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23406,7 +23386,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23418,7 +23398,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23428,7 +23408,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23440,7 +23420,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23450,7 +23430,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23462,7 +23442,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23472,7 +23452,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23484,7 +23464,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23494,7 +23474,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23506,7 +23486,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23516,7 +23496,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23528,7 +23508,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23538,7 +23518,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23550,7 +23530,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23560,7 +23540,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23572,7 +23552,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23582,7 +23562,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23594,7 +23574,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23604,7 +23584,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23616,7 +23596,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23626,7 +23606,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -23638,7 +23618,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -23656,7 +23636,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23666,7 +23646,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23676,7 +23656,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23686,7 +23666,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23698,7 +23678,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23708,7 +23688,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23720,7 +23700,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23730,7 +23710,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23740,7 +23720,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23750,7 +23730,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23765,7 +23745,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512" |] + Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23775,7 +23755,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "M512" |] + Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -23848,7 +23828,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23858,7 +23838,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23868,7 +23848,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23878,7 +23858,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23888,7 +23868,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23898,7 +23878,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23908,7 +23888,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23918,7 +23898,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23930,7 +23910,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23940,7 +23920,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23950,7 +23930,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23960,7 +23940,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23970,7 +23950,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23980,7 +23960,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -23990,7 +23970,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24000,7 +23980,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24012,7 +23992,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24022,7 +24002,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24034,7 +24014,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24044,7 +24024,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24064,7 +24044,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24074,7 +24054,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24086,7 +24066,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24096,7 +24076,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24108,8 +24088,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24226,7 +24206,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24236,7 +24216,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24258,8 +24238,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "XMM2/M8" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24268,8 +24248,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "XMM2/M8" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24280,7 +24260,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24290,7 +24270,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "XMM2/M16" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24338,8 +24318,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24348,8 +24328,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24358,8 +24338,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24368,8 +24348,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24382,8 +24362,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24392,8 +24372,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24402,8 +24382,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24412,8 +24392,8 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -24426,7 +24406,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24436,7 +24416,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24446,7 +24426,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24456,7 +24436,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24468,7 +24448,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24478,7 +24458,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24488,7 +24468,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24498,7 +24478,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24510,7 +24490,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24520,7 +24500,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24530,7 +24510,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24540,7 +24520,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24552,7 +24532,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24562,7 +24542,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -24572,7 +24552,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24582,7 +24562,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24598,7 +24578,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24608,7 +24588,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24618,7 +24598,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24628,7 +24608,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24640,7 +24620,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24650,7 +24630,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24660,7 +24640,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24670,7 +24650,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24682,7 +24662,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24692,7 +24672,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24702,7 +24682,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24712,7 +24692,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24724,7 +24704,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24734,7 +24714,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24746,7 +24726,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24756,7 +24736,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24766,7 +24746,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24776,7 +24756,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24788,7 +24768,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24798,7 +24778,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24810,7 +24790,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24820,7 +24800,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24830,7 +24810,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24840,7 +24820,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24852,7 +24832,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24862,7 +24842,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24874,7 +24854,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24884,7 +24864,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24894,7 +24874,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24904,7 +24884,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24916,7 +24896,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24926,7 +24906,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24950,7 +24930,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24960,7 +24940,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24970,7 +24950,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24980,7 +24960,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24992,7 +24972,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25002,7 +24982,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25012,7 +24992,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25022,7 +25002,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25034,7 +25014,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25044,7 +25024,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25054,7 +25034,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25064,7 +25044,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25076,7 +25056,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25086,7 +25066,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25098,7 +25078,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25108,7 +25088,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25118,7 +25098,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25128,7 +25108,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25140,7 +25120,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25150,7 +25130,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25162,7 +25142,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25172,7 +25152,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25182,7 +25162,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25192,7 +25172,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25204,7 +25184,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25214,7 +25194,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25226,7 +25206,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25236,7 +25216,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25246,7 +25226,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25256,7 +25236,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25268,7 +25248,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25278,7 +25258,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25291,7 +25271,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25301,7 +25281,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25311,7 +25291,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25321,7 +25301,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25331,7 +25311,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25341,7 +25321,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25351,7 +25331,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M128" |] + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25361,7 +25341,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Unknown "M256" |] + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -25418,7 +25398,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25428,7 +25408,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25440,7 +25420,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25450,7 +25430,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25462,7 +25442,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25472,7 +25452,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25482,7 +25462,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25492,7 +25472,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25504,7 +25484,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25514,7 +25494,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25524,7 +25504,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25534,7 +25514,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25546,7 +25526,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25556,7 +25536,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25566,7 +25546,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25576,7 +25556,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25588,7 +25568,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25598,7 +25578,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25610,7 +25590,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25620,7 +25600,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25630,7 +25610,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25640,7 +25620,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25652,7 +25632,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25662,7 +25642,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25674,7 +25654,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25684,7 +25664,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25694,7 +25674,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25704,7 +25684,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25716,7 +25696,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25726,7 +25706,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25738,7 +25718,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25748,7 +25728,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25758,7 +25738,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25768,7 +25748,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25780,7 +25760,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25790,7 +25770,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25862,7 +25842,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -25872,7 +25852,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -25888,7 +25868,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25898,7 +25878,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25908,7 +25888,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25918,7 +25898,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25928,7 +25908,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25938,7 +25918,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25950,7 +25930,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25960,7 +25940,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25970,7 +25950,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25980,7 +25960,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -25990,7 +25970,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26000,7 +25980,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26024,7 +26004,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26034,7 +26014,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26044,7 +26024,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26054,7 +26034,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26064,7 +26044,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26074,7 +26054,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26086,7 +26066,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -26098,7 +26078,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26108,7 +26088,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26120,7 +26100,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26130,7 +26110,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26142,7 +26122,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26152,7 +26132,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26164,7 +26144,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26174,7 +26154,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26542,7 +26522,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26552,7 +26532,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26564,7 +26544,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26574,7 +26554,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26584,7 +26564,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26594,7 +26574,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26604,7 +26584,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26614,7 +26594,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None @@ -26628,7 +26608,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26638,7 +26618,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26648,7 +26628,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26658,7 +26638,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26668,7 +26648,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26678,7 +26658,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26690,7 +26670,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26700,7 +26680,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -26712,7 +26692,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26722,7 +26702,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26732,7 +26712,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26742,7 +26722,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26752,7 +26732,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26762,7 +26742,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26772,7 +26752,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26782,7 +26762,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None @@ -26814,7 +26794,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26826,7 +26806,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -26838,7 +26818,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26848,7 +26828,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26862,7 +26842,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26872,7 +26852,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26884,7 +26864,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26894,7 +26874,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -26906,7 +26886,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26920,7 +26900,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -26930,7 +26910,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -26942,7 +26922,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -26952,7 +26932,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -26964,7 +26944,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26976,7 +26956,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26988,7 +26968,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -26998,7 +26978,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27010,7 +26990,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27020,7 +27000,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27032,7 +27012,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27042,7 +27022,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27054,7 +27034,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27064,7 +27044,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27084,8 +27064,8 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -27096,8 +27076,8 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -27108,8 +27088,8 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -27118,7 +27098,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27130,8 +27110,8 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -27142,7 +27122,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27154,7 +27134,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27172,7 +27152,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27182,7 +27162,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27198,8 +27178,8 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -27210,7 +27190,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27222,7 +27202,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27232,7 +27212,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27270,7 +27250,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27280,7 +27260,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27292,7 +27272,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27302,7 +27282,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27314,7 +27294,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27324,7 +27304,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27336,7 +27316,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27346,7 +27326,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.None @@ -27366,7 +27346,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27378,7 +27358,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27402,7 +27382,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27412,7 +27392,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27424,7 +27404,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27436,7 +27416,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27446,7 +27426,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27460,7 +27440,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27470,7 +27450,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27484,7 +27464,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None @@ -27502,7 +27482,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27512,7 +27492,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27524,7 +27504,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27534,7 +27514,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27546,7 +27526,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27556,7 +27536,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.None @@ -27606,7 +27586,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -27618,7 +27598,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -27630,7 +27610,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -27642,7 +27622,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -27866,7 +27846,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27876,7 +27856,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27888,7 +27868,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27898,7 +27878,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -27938,7 +27918,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27950,7 +27930,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -27994,7 +27974,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -28004,7 +27984,7 @@ let (vexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None @@ -28082,8 +28062,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28092,8 +28072,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Mem Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28102,8 +28082,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28112,8 +28092,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Mem Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28122,8 +28102,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28132,8 +28112,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28142,8 +28122,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28152,8 +28132,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28162,8 +28142,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28172,8 +28152,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28184,8 +28164,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28194,7 +28174,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M64{K1}"; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None @@ -28204,8 +28184,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28214,7 +28194,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M32{K1}"; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None @@ -28224,7 +28204,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28234,7 +28214,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28244,7 +28224,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28254,7 +28234,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28264,7 +28244,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28274,7 +28254,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28286,8 +28266,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28296,8 +28276,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28306,8 +28286,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28316,7 +28296,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -28326,7 +28306,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28336,7 +28316,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28346,8 +28326,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28356,8 +28336,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28366,8 +28346,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28378,7 +28358,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -28388,7 +28368,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -28400,8 +28380,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28410,8 +28390,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28420,8 +28400,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28430,8 +28410,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28440,8 +28420,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28450,8 +28430,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28462,8 +28442,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28472,8 +28452,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28482,8 +28462,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28492,8 +28472,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28502,8 +28482,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28512,8 +28492,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28524,7 +28504,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28534,7 +28514,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28544,7 +28524,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.None @@ -28554,8 +28534,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28564,8 +28544,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28574,8 +28554,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28586,7 +28566,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -28596,7 +28576,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.None @@ -28640,8 +28620,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28650,8 +28630,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28660,8 +28640,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28670,8 +28650,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28680,8 +28660,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28690,8 +28670,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28702,7 +28682,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28712,7 +28692,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28722,7 +28702,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28732,7 +28712,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28742,7 +28722,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28752,7 +28732,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -28764,7 +28744,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -28774,7 +28754,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.C Mode64 = Mode64.None @@ -28784,7 +28764,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] OpEn = OpEn.C Mode64 = Mode64.None @@ -28794,7 +28774,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.C Mode64 = Mode64.None @@ -28806,8 +28786,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28816,8 +28796,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28826,8 +28806,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M512"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28836,8 +28816,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28846,8 +28826,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28856,8 +28836,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M512"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -28868,7 +28848,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28878,7 +28858,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28888,7 +28868,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28898,7 +28878,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28910,7 +28890,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28920,7 +28900,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28930,7 +28910,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28940,7 +28920,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28952,7 +28932,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28962,7 +28942,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28974,7 +28954,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -28984,7 +28964,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -29062,8 +29042,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29072,8 +29052,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29082,8 +29062,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29092,8 +29072,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29102,8 +29082,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29112,8 +29092,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29122,8 +29102,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29132,8 +29112,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29148,8 +29128,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29158,8 +29138,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29168,8 +29148,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29178,8 +29158,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29188,8 +29168,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29198,8 +29178,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29210,8 +29190,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29220,8 +29200,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29230,8 +29210,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29240,8 +29220,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29250,8 +29230,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29260,8 +29240,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29272,8 +29252,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29282,8 +29262,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29292,8 +29272,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29302,8 +29282,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29312,8 +29292,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29322,8 +29302,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29334,8 +29314,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29344,8 +29324,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29354,8 +29334,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29364,8 +29344,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29374,8 +29354,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29384,8 +29364,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29396,8 +29376,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29406,8 +29386,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29416,8 +29396,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29426,8 +29406,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29436,8 +29416,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29446,8 +29426,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29456,8 +29436,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29466,8 +29446,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29478,8 +29458,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29488,8 +29468,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29498,8 +29478,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29508,8 +29488,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29518,8 +29498,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29528,8 +29508,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29538,8 +29518,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29548,8 +29528,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29560,8 +29540,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29570,8 +29550,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29580,8 +29560,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29590,8 +29570,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29600,8 +29580,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29610,8 +29590,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29620,8 +29600,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29630,8 +29610,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29642,8 +29622,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29652,8 +29632,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29662,8 +29642,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29672,8 +29652,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29682,8 +29662,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29692,8 +29672,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29702,8 +29682,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29712,8 +29692,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29722,8 +29702,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29732,8 +29712,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29742,8 +29722,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29752,8 +29732,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29764,8 +29744,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29774,8 +29754,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29784,8 +29764,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29794,8 +29774,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29804,8 +29784,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29814,8 +29794,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29824,8 +29804,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29834,8 +29814,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29846,8 +29826,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29856,8 +29836,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29866,8 +29846,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29876,8 +29856,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29886,8 +29866,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29896,8 +29876,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29906,8 +29886,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29916,8 +29896,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29928,8 +29908,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29938,8 +29918,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29948,8 +29928,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29958,8 +29938,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29968,8 +29948,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29978,8 +29958,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29988,8 +29968,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -29998,8 +29978,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30010,8 +29990,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30020,8 +30000,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30030,8 +30010,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30040,8 +30020,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30050,8 +30030,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30060,8 +30040,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30070,8 +30050,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30080,8 +30060,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30092,8 +30072,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30102,8 +30082,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30112,8 +30092,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30124,8 +30104,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30134,8 +30114,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30144,8 +30124,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30156,8 +30136,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30166,8 +30146,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30176,8 +30156,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30188,8 +30168,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30198,8 +30178,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30208,8 +30188,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30220,7 +30200,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30230,7 +30210,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30240,7 +30220,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30252,7 +30232,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30262,7 +30242,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30272,7 +30252,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -30284,7 +30264,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None @@ -30294,7 +30274,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -30304,7 +30284,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -30316,8 +30296,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30326,8 +30306,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30336,8 +30316,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30348,8 +30328,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30358,8 +30338,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30368,8 +30348,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30380,8 +30360,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30390,8 +30370,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30400,8 +30380,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30412,8 +30392,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30422,8 +30402,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30432,8 +30412,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30444,8 +30424,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30454,8 +30434,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30464,8 +30444,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30476,8 +30456,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30486,8 +30466,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30496,8 +30476,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30508,8 +30488,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30518,8 +30498,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30528,8 +30508,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30540,8 +30520,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "R32/M32" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30550,7 +30530,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "R64/M64" |] OpEn = OpEn.C Mode64 = Mode64.None @@ -30562,8 +30542,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30572,8 +30552,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30582,8 +30562,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30592,8 +30572,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30602,8 +30582,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30612,8 +30592,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30622,8 +30602,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30632,8 +30612,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30642,8 +30622,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30652,8 +30632,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30662,8 +30642,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30672,8 +30652,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30682,8 +30662,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30692,8 +30672,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30702,8 +30682,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30712,8 +30692,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30722,8 +30702,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30732,8 +30712,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30744,8 +30724,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30754,8 +30734,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30764,8 +30744,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30774,8 +30754,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30784,8 +30764,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30794,8 +30774,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30804,8 +30784,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30814,8 +30794,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30824,8 +30804,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30836,8 +30816,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30846,8 +30826,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30856,8 +30836,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30866,8 +30846,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30876,8 +30856,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30886,8 +30866,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30896,8 +30876,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30906,8 +30886,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30916,8 +30896,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30928,8 +30908,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30938,8 +30918,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30948,8 +30928,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30958,8 +30938,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30968,8 +30948,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30978,8 +30958,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30988,8 +30968,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -30998,8 +30978,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31008,8 +30988,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp4 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp4 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31018,8 +30998,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31028,8 +31008,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31038,8 +31018,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31048,8 +31028,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31058,8 +31038,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31068,8 +31048,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31078,8 +31058,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31088,8 +31068,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31098,8 +31078,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp1 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31108,8 +31088,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31118,8 +31098,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31128,8 +31108,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31138,8 +31118,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31148,8 +31128,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31158,8 +31138,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp0 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp0 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31170,7 +31150,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31180,7 +31160,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31190,7 +31170,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp7 + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31200,8 +31180,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31210,8 +31190,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31220,8 +31200,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp6 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31230,7 +31210,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31240,7 +31220,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31250,7 +31230,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp3 + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31260,8 +31240,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31270,8 +31250,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31280,8 +31260,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRMOp2 OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31292,7 +31272,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31302,7 +31282,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31312,7 +31292,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31324,7 +31304,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31334,7 +31314,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31344,7 +31324,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -31356,7 +31336,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31366,7 +31346,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31376,7 +31356,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -31390,8 +31370,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31400,8 +31380,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31410,8 +31390,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31420,8 +31400,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31430,8 +31410,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31440,8 +31420,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31450,8 +31430,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31460,8 +31440,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31470,8 +31450,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31480,8 +31460,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31490,8 +31470,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31500,8 +31480,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31510,7 +31490,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31520,7 +31500,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31530,7 +31510,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31540,7 +31520,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31552,8 +31532,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31562,8 +31542,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31572,8 +31552,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31582,8 +31562,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31592,8 +31572,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31602,8 +31582,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31612,8 +31592,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31622,8 +31602,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31632,8 +31612,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31642,8 +31622,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31652,8 +31632,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31662,8 +31642,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31672,7 +31652,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31682,7 +31662,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31692,7 +31672,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31702,7 +31682,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31714,8 +31694,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31724,8 +31704,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31734,8 +31714,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31744,8 +31724,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31754,8 +31734,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31764,8 +31744,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31774,8 +31754,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31784,8 +31764,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31794,8 +31774,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31804,8 +31784,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31814,8 +31794,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31824,8 +31804,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31834,8 +31814,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31844,8 +31824,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31854,8 +31834,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31864,8 +31844,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31874,8 +31854,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31884,8 +31864,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31896,8 +31876,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31906,8 +31886,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31916,8 +31896,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31926,8 +31906,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31936,8 +31916,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31946,8 +31926,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -31956,7 +31936,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31966,7 +31946,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31976,7 +31956,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -31986,7 +31966,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -32002,8 +31982,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "R32/M32"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32012,7 +31992,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32022,7 +32002,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32034,7 +32014,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32044,7 +32024,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32054,7 +32034,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32064,7 +32044,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32074,7 +32054,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32084,7 +32064,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32094,7 +32074,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32104,7 +32084,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32114,7 +32094,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32124,7 +32104,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32134,7 +32114,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32144,7 +32124,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32154,7 +32134,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32164,7 +32144,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32174,7 +32154,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32184,7 +32164,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32194,7 +32174,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32204,7 +32184,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32348,7 +32328,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32358,7 +32338,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32368,7 +32348,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32378,7 +32358,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32388,7 +32368,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32398,7 +32378,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32408,7 +32388,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32418,7 +32398,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32432,7 +32412,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -32444,8 +32424,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32456,8 +32436,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32466,8 +32446,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32476,8 +32456,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32486,8 +32466,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32496,8 +32476,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32506,8 +32486,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32538,8 +32518,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32548,8 +32528,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32558,8 +32538,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32570,8 +32550,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32580,8 +32560,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32590,8 +32570,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32602,8 +32582,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32612,8 +32592,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32622,8 +32602,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32634,8 +32614,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32644,8 +32624,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32654,8 +32634,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32666,8 +32646,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32676,8 +32656,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32686,8 +32666,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32698,7 +32678,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -32712,8 +32692,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32722,8 +32702,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32732,8 +32712,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32744,8 +32724,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32754,8 +32734,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32764,8 +32744,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32776,8 +32756,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32786,8 +32766,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32796,8 +32776,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32808,8 +32788,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32818,8 +32798,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32828,8 +32808,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32838,8 +32818,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32848,8 +32828,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32858,8 +32838,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32870,8 +32850,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32880,8 +32860,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32890,8 +32870,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32902,8 +32882,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32912,8 +32892,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32922,8 +32902,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32934,8 +32914,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32944,8 +32924,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32954,8 +32934,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32966,8 +32946,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32976,8 +32956,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32986,8 +32966,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -32996,8 +32976,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33006,8 +32986,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33016,8 +32996,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33028,8 +33008,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33038,8 +33018,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33048,8 +33028,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33060,8 +33040,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33070,8 +33050,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33080,8 +33060,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33092,8 +33072,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33102,8 +33082,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33112,8 +33092,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33122,8 +33102,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33132,8 +33112,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33142,8 +33122,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33154,8 +33134,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33164,8 +33144,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33174,8 +33154,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33186,8 +33166,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33196,8 +33176,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33206,8 +33186,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33218,8 +33198,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33228,8 +33208,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33238,8 +33218,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33250,8 +33230,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33260,8 +33240,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33270,8 +33250,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33280,8 +33260,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33290,8 +33270,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33300,8 +33280,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33310,8 +33290,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33320,8 +33300,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33330,8 +33310,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33340,8 +33320,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33350,8 +33330,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33360,8 +33340,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33372,8 +33352,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M128"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33382,8 +33362,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M256"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33392,8 +33372,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "M512"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33404,8 +33384,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33414,8 +33394,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33424,8 +33404,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33436,8 +33416,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33446,8 +33426,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33456,8 +33436,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33468,8 +33448,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33478,8 +33458,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33488,8 +33468,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33500,8 +33480,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33510,8 +33490,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33520,8 +33500,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33530,8 +33510,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33540,8 +33520,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33550,8 +33530,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33562,8 +33542,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33572,8 +33552,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33582,8 +33562,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33594,8 +33574,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33604,8 +33584,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33614,8 +33594,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33626,8 +33606,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33636,8 +33616,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33646,8 +33626,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33658,8 +33638,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33668,8 +33648,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33678,8 +33658,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33688,8 +33668,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33698,8 +33678,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33708,8 +33688,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33722,8 +33702,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33732,8 +33712,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33742,8 +33722,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33754,8 +33734,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33764,8 +33744,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33774,8 +33754,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33786,8 +33766,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33796,8 +33776,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33806,8 +33786,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33818,8 +33798,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33828,8 +33808,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33838,8 +33818,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33850,8 +33830,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33860,8 +33840,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33870,8 +33850,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33882,7 +33862,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -33892,7 +33872,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -33902,7 +33882,7 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -33916,8 +33896,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33926,8 +33906,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33936,8 +33916,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33948,8 +33928,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33958,8 +33938,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33968,8 +33948,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33980,8 +33960,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -33990,8 +33970,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34000,8 +33980,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34012,8 +33992,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34022,8 +34002,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34032,8 +34012,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34044,8 +34024,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34054,8 +34034,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34064,8 +34044,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34076,8 +34056,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34086,8 +34066,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34096,8 +34076,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34108,8 +34088,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34118,8 +34098,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34128,8 +34108,8 @@ let (evexTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34146,8 +34126,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34156,8 +34136,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34166,8 +34146,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34184,8 +34164,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34194,8 +34174,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34204,8 +34184,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34228,8 +34208,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34238,8 +34218,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34248,8 +34228,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34260,8 +34240,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34270,8 +34250,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34280,8 +34260,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34292,8 +34272,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34302,8 +34282,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34312,8 +34292,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34328,7 +34308,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34338,7 +34318,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34348,7 +34328,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34358,8 +34338,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34368,8 +34348,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34378,8 +34358,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34390,7 +34370,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34400,7 +34380,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34410,7 +34390,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34420,8 +34400,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34430,8 +34410,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34440,8 +34420,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34452,7 +34432,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34462,7 +34442,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34472,7 +34452,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34482,8 +34462,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34492,8 +34472,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34502,8 +34482,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34514,8 +34494,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34524,8 +34504,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34534,8 +34514,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34544,7 +34524,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34554,7 +34534,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34564,7 +34544,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34576,7 +34556,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34586,7 +34566,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34596,7 +34576,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34606,8 +34586,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34616,8 +34596,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34626,8 +34606,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34636,8 +34616,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34646,8 +34626,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34656,8 +34636,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34668,7 +34648,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34678,7 +34658,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34688,7 +34668,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -34698,8 +34678,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34708,8 +34688,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34718,8 +34698,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34728,8 +34708,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34738,8 +34718,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34748,8 +34728,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34760,8 +34740,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34770,8 +34750,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34780,8 +34760,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34790,8 +34770,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34804,8 +34784,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34814,8 +34794,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34824,8 +34804,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34836,8 +34816,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34846,8 +34826,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34856,8 +34836,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34866,8 +34846,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34878,8 +34858,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34888,8 +34868,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34898,8 +34878,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34908,8 +34888,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34920,8 +34900,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34930,8 +34910,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34942,8 +34922,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34952,8 +34932,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34962,8 +34942,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34974,8 +34954,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34984,8 +34964,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -34994,8 +34974,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35006,8 +34986,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35016,8 +34996,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35026,8 +35006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35038,8 +35018,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35048,8 +35028,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35058,8 +35038,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35070,8 +35050,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35080,8 +35060,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35090,8 +35070,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35100,7 +35080,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35110,7 +35090,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35120,7 +35100,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35132,8 +35112,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35142,8 +35122,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35152,8 +35132,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35162,7 +35142,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35172,7 +35152,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35182,7 +35162,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35194,8 +35174,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35204,8 +35184,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35214,8 +35194,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35224,7 +35204,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35234,7 +35214,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35244,7 +35224,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35256,8 +35236,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35266,8 +35246,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35276,8 +35256,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35286,7 +35266,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35296,7 +35276,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35306,7 +35286,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35318,8 +35298,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35328,8 +35308,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35338,8 +35318,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35348,7 +35328,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35358,7 +35338,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35368,7 +35348,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35380,8 +35360,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35390,8 +35370,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35400,8 +35380,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35410,7 +35390,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35420,7 +35400,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35430,7 +35410,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35442,7 +35422,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35452,7 +35432,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35462,7 +35442,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35472,7 +35452,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35482,7 +35462,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35492,7 +35472,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35502,7 +35482,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35512,7 +35492,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35522,7 +35502,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35532,7 +35512,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35542,7 +35522,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35552,7 +35532,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -35564,7 +35544,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35574,7 +35554,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35584,7 +35564,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35594,7 +35574,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35604,7 +35584,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35614,7 +35594,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35624,7 +35604,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35634,7 +35614,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35644,7 +35624,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35654,7 +35634,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35664,7 +35644,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35674,7 +35654,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -35686,8 +35666,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35696,8 +35676,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35706,8 +35686,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35716,7 +35696,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35726,7 +35706,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35736,7 +35716,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35746,7 +35726,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35756,7 +35736,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35766,7 +35746,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35778,7 +35758,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None @@ -35788,7 +35768,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -35798,7 +35778,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -35808,7 +35788,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35818,7 +35798,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35828,7 +35808,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35838,7 +35818,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35848,7 +35828,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35858,7 +35838,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35870,8 +35850,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35880,8 +35860,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz256; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35890,8 +35870,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz512; Unknown "M512" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35900,7 +35880,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35910,7 +35890,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35920,7 +35900,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -35932,8 +35912,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35942,8 +35922,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35952,8 +35932,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35964,8 +35944,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35974,8 +35954,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35984,8 +35964,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -35994,8 +35974,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36004,8 +35984,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36014,8 +35994,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36026,8 +36006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36036,8 +36016,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36052,8 +36032,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36062,8 +36042,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36072,8 +36052,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36082,7 +36062,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36092,7 +36072,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36102,7 +36082,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36114,8 +36094,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36124,8 +36104,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36134,8 +36114,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36144,7 +36124,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36154,7 +36134,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36164,7 +36144,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36176,8 +36156,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36186,8 +36166,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36196,8 +36176,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36206,7 +36186,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36216,7 +36196,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36226,7 +36206,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36238,8 +36218,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36248,8 +36228,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36258,8 +36238,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36268,7 +36248,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36278,7 +36258,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36288,7 +36268,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36300,8 +36280,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36310,8 +36290,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36320,8 +36300,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36330,7 +36310,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36340,7 +36320,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36350,7 +36330,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36362,8 +36342,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36372,8 +36352,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36382,8 +36362,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36392,7 +36372,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36402,7 +36382,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36412,7 +36392,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -36424,8 +36404,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36434,8 +36414,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36444,8 +36424,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36454,8 +36434,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36466,7 +36446,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None @@ -36476,7 +36456,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -36486,7 +36466,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -36498,8 +36478,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36508,8 +36488,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36518,8 +36498,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36528,7 +36508,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36538,7 +36518,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36548,7 +36528,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36558,7 +36538,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36568,7 +36548,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36578,7 +36558,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36590,8 +36570,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36600,8 +36580,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36610,8 +36590,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36620,8 +36600,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36630,8 +36610,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36640,8 +36620,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36650,7 +36630,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36660,7 +36640,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36670,7 +36650,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36680,7 +36660,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36690,7 +36670,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36700,7 +36680,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36712,8 +36692,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36722,8 +36702,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36732,8 +36712,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36742,7 +36722,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36752,7 +36732,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36762,7 +36742,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -36774,8 +36754,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36784,8 +36764,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36794,8 +36774,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36804,8 +36784,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36814,8 +36794,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36824,8 +36804,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36836,8 +36816,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36846,8 +36826,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36856,8 +36836,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36868,8 +36848,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36878,8 +36858,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36888,8 +36868,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36898,8 +36878,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36908,8 +36888,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36918,8 +36898,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36930,8 +36910,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36940,8 +36920,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36950,8 +36930,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36962,8 +36942,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36972,8 +36952,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36982,8 +36962,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -36992,8 +36972,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37002,8 +36982,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37012,8 +36992,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37024,8 +37004,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37034,8 +37014,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37044,8 +37024,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37054,8 +37034,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37064,8 +37044,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37074,8 +37054,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37088,8 +37068,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37098,8 +37078,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37108,8 +37088,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37118,8 +37098,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37128,8 +37108,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37138,8 +37118,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37150,8 +37130,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37160,8 +37140,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37172,8 +37152,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37182,8 +37162,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37192,8 +37172,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37202,8 +37182,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37212,8 +37192,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37222,8 +37202,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37234,8 +37214,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37244,8 +37224,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37254,8 +37234,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37264,8 +37244,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37274,8 +37254,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37284,8 +37264,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37296,8 +37276,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37306,8 +37286,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37316,8 +37296,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37326,8 +37306,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37336,8 +37316,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37346,8 +37326,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37358,8 +37338,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37368,8 +37348,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37378,8 +37358,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37388,8 +37368,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37398,8 +37378,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37408,8 +37388,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37428,8 +37408,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37438,8 +37418,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37448,8 +37428,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37458,8 +37438,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37468,8 +37448,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37478,8 +37458,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37490,8 +37470,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37500,8 +37480,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37512,8 +37492,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37522,8 +37502,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37532,8 +37512,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37542,8 +37522,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37552,8 +37532,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37562,8 +37542,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37574,8 +37554,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37584,8 +37564,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37596,8 +37576,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37606,8 +37586,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37616,8 +37596,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37628,8 +37608,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37638,8 +37618,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37648,8 +37628,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37660,8 +37640,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37670,8 +37650,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37680,8 +37660,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37690,8 +37670,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37700,8 +37680,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37710,8 +37690,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37720,8 +37700,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37732,8 +37712,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37742,8 +37722,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37752,8 +37732,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37762,8 +37742,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37774,8 +37754,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37784,8 +37764,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37794,8 +37774,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37804,8 +37784,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37814,8 +37794,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37824,8 +37804,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37836,8 +37816,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37846,8 +37826,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37856,8 +37836,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37866,8 +37846,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37876,8 +37856,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37886,8 +37866,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37902,8 +37882,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37912,8 +37892,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37922,8 +37902,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37934,8 +37914,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37944,8 +37924,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37954,8 +37934,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37964,8 +37944,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37974,8 +37954,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37984,8 +37964,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -37996,8 +37976,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38006,8 +37986,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38016,8 +37996,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38026,8 +38006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38038,8 +38018,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.E Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38048,8 +38028,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38072,8 +38052,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38082,8 +38062,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38092,8 +38072,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38102,8 +38082,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38112,8 +38092,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M512" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38122,8 +38102,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38132,8 +38112,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38142,8 +38122,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38152,8 +38132,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "M256" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38162,8 +38142,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38172,8 +38152,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "M512" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38182,8 +38162,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38194,7 +38174,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38204,8 +38184,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38214,7 +38194,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38224,8 +38204,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38234,7 +38214,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38244,8 +38224,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38254,7 +38234,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38264,8 +38244,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38274,7 +38254,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38284,8 +38264,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38294,7 +38274,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38304,8 +38284,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38316,8 +38296,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38326,8 +38306,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38336,8 +38316,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38346,8 +38326,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38356,8 +38336,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38366,8 +38346,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38378,8 +38358,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38388,8 +38368,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38398,8 +38378,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38408,8 +38388,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38418,8 +38398,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38428,8 +38408,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38440,8 +38420,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38450,8 +38430,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38460,8 +38440,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38470,8 +38450,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38480,8 +38460,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38490,8 +38470,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38504,7 +38484,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38514,7 +38494,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38524,7 +38504,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38534,7 +38514,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38544,7 +38524,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38554,7 +38534,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -38580,8 +38560,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38590,8 +38570,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38600,8 +38580,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38612,8 +38592,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38622,8 +38602,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38632,8 +38612,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38642,8 +38622,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38652,8 +38632,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38662,8 +38642,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38674,8 +38654,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38684,8 +38664,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38694,8 +38674,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38704,8 +38684,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38714,8 +38694,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38724,8 +38704,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38734,8 +38714,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38744,8 +38724,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38754,8 +38734,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38766,8 +38746,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38776,8 +38756,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38786,8 +38766,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38796,8 +38776,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38806,8 +38786,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38816,8 +38796,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38830,8 +38810,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38840,8 +38820,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38850,8 +38830,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38860,8 +38840,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38870,8 +38850,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38880,8 +38860,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38892,8 +38872,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38902,8 +38882,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38912,8 +38892,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38922,8 +38902,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38932,8 +38912,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38942,8 +38922,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38954,8 +38934,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38964,8 +38944,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38974,8 +38954,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38984,8 +38964,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -38994,8 +38974,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39004,8 +38984,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39016,8 +38996,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M8" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39026,8 +39006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "XMM2/M8" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39036,8 +39016,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "XMM2/M8" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39048,8 +39028,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2/M16" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39058,8 +39038,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "XMM2/M16" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39068,8 +39048,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "XMM2/M16" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Unknown "XMM2/M16" |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39080,8 +39060,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39090,8 +39070,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39100,8 +39080,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39112,8 +39092,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39122,8 +39102,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39132,8 +39112,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "REG" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39144,8 +39124,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39154,8 +39134,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39164,8 +39144,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz32 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39174,8 +39154,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39184,8 +39164,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39194,8 +39174,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz64 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39206,8 +39186,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39216,8 +39196,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39226,8 +39206,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39236,8 +39216,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39246,8 +39226,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39256,8 +39236,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39268,8 +39248,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39278,8 +39258,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39288,8 +39268,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39298,8 +39278,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39308,8 +39288,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39318,8 +39298,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39330,8 +39310,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39340,8 +39320,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39350,8 +39330,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39360,8 +39340,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39370,8 +39350,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39380,8 +39360,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39398,8 +39378,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39408,8 +39388,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39418,8 +39398,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39438,8 +39418,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39448,8 +39428,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39458,8 +39438,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39468,8 +39448,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39478,8 +39458,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39488,8 +39468,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39500,8 +39480,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39510,8 +39490,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39520,8 +39500,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39530,8 +39510,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39540,8 +39520,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39550,8 +39530,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39562,7 +39542,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39572,7 +39552,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39582,7 +39562,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39592,7 +39572,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39602,7 +39582,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39612,7 +39592,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39624,7 +39604,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39634,7 +39614,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39644,7 +39624,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39654,7 +39634,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39664,7 +39644,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39674,7 +39654,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39688,8 +39668,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39698,8 +39678,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39708,8 +39688,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39718,8 +39698,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39728,8 +39708,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39738,8 +39718,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -39752,7 +39732,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39762,7 +39742,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -39772,7 +39752,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -40036,8 +40016,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40046,8 +40026,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40056,8 +40036,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40066,8 +40046,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40076,8 +40056,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40086,8 +40066,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40098,8 +40078,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40108,8 +40088,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40118,8 +40098,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40128,8 +40108,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40138,8 +40118,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40148,8 +40128,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40160,8 +40140,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40170,8 +40150,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40180,8 +40160,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40190,8 +40170,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40200,8 +40180,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40210,8 +40190,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40222,8 +40202,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40232,8 +40212,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40244,8 +40224,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40254,8 +40234,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40264,8 +40244,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40274,8 +40254,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40284,8 +40264,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40294,8 +40274,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40304,8 +40284,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40316,8 +40296,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40326,8 +40306,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40336,8 +40316,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40348,7 +40328,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None @@ -40358,8 +40338,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40368,8 +40348,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40378,8 +40358,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40388,8 +40368,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40398,8 +40378,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40410,8 +40390,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40420,8 +40400,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40432,8 +40412,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40442,8 +40422,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40452,8 +40432,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40462,8 +40442,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40472,8 +40452,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40482,8 +40462,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40494,8 +40474,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40504,8 +40484,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40768,8 +40748,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40778,8 +40758,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40788,8 +40768,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40798,8 +40778,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40808,8 +40788,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40818,8 +40798,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40830,8 +40810,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40840,8 +40820,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40850,8 +40830,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40860,8 +40840,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40870,8 +40850,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40880,8 +40860,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40892,8 +40872,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40902,8 +40882,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40912,8 +40892,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40922,8 +40902,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40932,8 +40912,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40942,8 +40922,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40954,8 +40934,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40964,8 +40944,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40976,8 +40956,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40986,8 +40966,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -40996,8 +40976,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41006,8 +40986,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41016,8 +40996,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41026,8 +41006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41036,8 +41016,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Unknown "ZMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41048,8 +41028,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41058,8 +41038,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41068,8 +41048,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Unknown "XMM2+3"; Unknown "M128" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41080,8 +41060,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41090,8 +41070,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41100,8 +41080,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41110,8 +41090,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41120,8 +41100,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41130,8 +41110,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41142,8 +41122,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41152,8 +41132,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41164,8 +41144,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41174,8 +41154,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41184,8 +41164,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41194,8 +41174,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41204,8 +41184,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41214,8 +41194,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41226,8 +41206,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41236,8 +41216,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41256,8 +41236,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41266,8 +41246,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41276,8 +41256,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41288,8 +41268,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41298,8 +41278,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41308,8 +41288,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41320,8 +41300,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41330,8 +41310,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41340,8 +41320,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41350,8 +41330,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41360,8 +41340,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41370,8 +41350,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41382,8 +41362,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41392,8 +41372,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41402,8 +41382,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41412,8 +41392,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41422,8 +41402,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41432,8 +41412,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41444,8 +41424,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41454,8 +41434,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41464,8 +41444,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41474,8 +41454,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41484,8 +41464,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41494,8 +41474,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41506,8 +41486,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41516,8 +41496,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41528,8 +41508,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41538,8 +41518,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41548,8 +41528,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41558,8 +41538,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41568,8 +41548,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41578,8 +41558,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41590,8 +41570,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41600,8 +41580,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41612,8 +41592,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41622,8 +41602,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41632,8 +41612,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41642,8 +41622,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41652,8 +41632,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41662,8 +41642,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41674,8 +41654,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41684,8 +41664,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41696,8 +41676,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41706,8 +41686,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41716,8 +41696,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41726,8 +41706,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41736,8 +41716,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41746,8 +41726,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41758,8 +41738,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41768,8 +41748,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41788,8 +41768,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41798,8 +41778,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41808,8 +41788,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41818,8 +41798,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41828,8 +41808,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41838,8 +41818,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -41852,7 +41832,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41862,7 +41842,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41872,7 +41852,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41882,7 +41862,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41892,7 +41872,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41902,7 +41882,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41912,7 +41892,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41922,7 +41902,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41934,7 +41914,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41944,7 +41924,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp1 + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41954,7 +41934,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41964,7 +41944,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp2 + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41974,7 +41954,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41984,7 +41964,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp5 + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -41994,7 +41974,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42004,7 +41984,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRMOp6 + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42016,8 +41996,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42026,8 +42006,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42040,8 +42020,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42050,8 +42030,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42062,8 +42042,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42072,8 +42052,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42084,8 +42064,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42094,8 +42074,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42106,8 +42086,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42116,8 +42096,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42130,8 +42110,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42140,8 +42120,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42150,8 +42130,8 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42186,7 +42166,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42196,7 +42176,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42206,7 +42186,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42218,7 +42198,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42228,7 +42208,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42238,7 +42218,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42250,7 +42230,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42260,7 +42240,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42270,7 +42250,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42282,7 +42262,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42292,7 +42272,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42302,7 +42282,7 @@ let (evexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42382,8 +42362,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42392,8 +42372,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42404,8 +42384,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42414,8 +42394,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42428,8 +42408,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42438,8 +42418,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42448,8 +42428,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42458,8 +42438,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42468,8 +42448,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42478,8 +42458,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42490,8 +42470,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42500,8 +42480,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42510,8 +42490,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42522,8 +42502,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42532,8 +42512,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42542,8 +42522,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42558,8 +42538,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42568,8 +42548,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42578,8 +42558,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42588,8 +42568,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42598,8 +42578,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42608,8 +42588,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42620,8 +42600,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42630,8 +42610,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42640,8 +42620,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42652,8 +42632,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42662,8 +42642,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42674,8 +42654,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42692,8 +42672,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42702,8 +42682,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42712,8 +42692,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42732,8 +42712,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M8"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42744,8 +42724,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M16"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42756,8 +42736,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "R32/M32"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42766,7 +42746,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42778,8 +42758,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "REG/M32"; Reg Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42790,8 +42770,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42800,8 +42780,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42810,8 +42790,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42820,8 +42800,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42832,7 +42812,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42842,7 +42822,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42852,7 +42832,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42862,7 +42842,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42874,8 +42854,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42884,8 +42864,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -42896,7 +42876,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -42906,7 +42886,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -42920,7 +42900,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42930,7 +42910,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42940,7 +42920,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Unknown "ZMM2{SAE}"; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -42952,7 +42932,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42962,7 +42942,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42972,7 +42952,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42982,7 +42962,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -42992,7 +42972,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43002,7 +42982,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43014,7 +42994,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43024,7 +43004,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43034,7 +43014,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43044,7 +43024,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43054,7 +43034,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43064,7 +43044,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43076,8 +43056,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M8"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43088,7 +43068,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43100,8 +43080,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Reg Sz128; Reg Sz128; Unknown "R32/M32"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43110,7 +43090,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43122,8 +43102,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43132,8 +43112,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43142,8 +43122,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43152,8 +43132,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43166,8 +43146,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43176,8 +43156,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43186,8 +43166,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43196,8 +43176,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43206,8 +43186,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43216,8 +43196,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43228,8 +43208,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43238,8 +43218,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43248,8 +43228,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43258,8 +43238,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43268,8 +43248,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43278,8 +43258,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43288,8 +43268,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43298,8 +43278,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43308,8 +43288,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43320,8 +43300,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43330,8 +43310,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43340,8 +43320,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43384,8 +43364,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43394,8 +43374,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43404,8 +43384,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43414,8 +43394,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43426,7 +43406,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43436,7 +43416,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43446,7 +43426,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -43456,7 +43436,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None @@ -43468,8 +43448,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43478,8 +43458,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43490,7 +43470,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.D Mode64 = Mode64.None @@ -43500,7 +43480,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43516,7 +43496,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43526,7 +43506,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43536,7 +43516,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43546,7 +43526,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43556,7 +43536,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43566,7 +43546,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43578,7 +43558,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43588,7 +43568,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43598,7 +43578,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43608,7 +43588,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43618,7 +43598,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43628,7 +43608,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -43644,8 +43624,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43654,8 +43634,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43664,8 +43644,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43676,8 +43656,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43686,8 +43666,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43696,8 +43676,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43706,8 +43686,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43718,7 +43698,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43728,7 +43708,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43738,7 +43718,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None @@ -43772,8 +43752,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43782,8 +43762,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43792,8 +43772,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43802,8 +43782,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43812,8 +43792,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43822,8 +43802,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43834,8 +43814,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43844,8 +43824,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43860,8 +43840,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43870,8 +43850,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43880,8 +43860,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43890,8 +43870,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43900,8 +43880,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43910,8 +43890,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43922,8 +43902,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43932,8 +43912,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43944,8 +43924,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43954,8 +43934,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43964,8 +43944,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43974,8 +43954,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43984,8 +43964,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -43994,8 +43974,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44004,8 +43984,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44014,8 +43994,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44024,8 +44004,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44037,7 +44017,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44046,8 +44026,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44056,8 +44036,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44096,7 +44076,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44106,7 +44086,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44116,7 +44096,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44126,7 +44106,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44136,7 +44116,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44146,7 +44126,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44156,7 +44136,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44166,7 +44146,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44176,7 +44156,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44188,7 +44168,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44198,7 +44178,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Unknown "XMM1/M16"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44208,7 +44188,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44236,8 +44216,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44246,8 +44226,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44256,8 +44236,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44268,8 +44248,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44278,8 +44258,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44288,8 +44268,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44298,8 +44278,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44308,8 +44288,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44318,8 +44298,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44330,8 +44310,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RM Sz128; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44340,8 +44320,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44350,8 +44330,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44362,8 +44342,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44372,8 +44352,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44382,8 +44362,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44392,8 +44372,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44402,8 +44382,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44412,8 +44392,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44580,7 +44560,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44590,7 +44570,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44600,7 +44580,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44610,7 +44590,7 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -44644,8 +44624,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44654,8 +44634,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44664,8 +44644,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44676,8 +44656,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM - Operands = [| Unknown "XMM1{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44686,8 +44666,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 - ModRM = ModRMType.ModRM - Operands = [| Unknown "YMM1{K1}{Z}"; Reg Sz256; RM Sz256; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } @@ -44696,8 +44676,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 - ModRM = ModRMType.ModRM - Operands = [| Unknown "ZMM1{K1}{Z}"; Reg Sz512; RM Sz512; Imm Sz8 |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None Compat = CompatLegMode.None } diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 9b9e44948..7309bf89a 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -45,12 +45,16 @@ type OperandType = | RM of OprSize | RMdiff of OprSize * OprSize | Reg of OprSize + | Sreg | FixedReg of Register * Visibility | STReg of Register option | BM of OprSize | BndReg + | MM of OprSize | MMXReg | Mem of OprSize + | Moffs of OprSize + | Far of OprSize | Imm of OprSize | FixedImm of int | Rel of OprSize @@ -79,16 +83,22 @@ and Visibility = // | FourOperands of OperandType * OperandType * OperandType * OperandType type ModRMType = - | NoModRM = 0 - | ModRM = 1 (* /r *) - | ModRMOp0 = 2 (* /0 *) - | ModRMOp1 = 3 (* /1 *) - | ModRMOp2 = 4 (* /2 *) - | ModRMOp3 = 5 (* /3 *) - | ModRMOp4 = 6 (* /4 *) - | ModRMOp5 = 7 (* /5 *) - | ModRMOp6 = 8 (* /6 *) - | ModRMOp7 = 9 (* /7 *) + | NoModRM + | ModRM of OprType (* /r *) + | ModRMOp0 of OprType (* /0 *) + | ModRMOp1 of OprType (* /1 *) + | ModRMOp2 of OprType (* /2 *) + | ModRMOp3 of OprType (* /3 *) + | ModRMOp4 of OprType (* /4 *) + | ModRMOp5 of OprType (* /5 *) + | ModRMOp6 of OprType (* /6 *) + | ModRMOp7 of OprType (* /7 *) + | FixedModRM of byte (* /digit *) + +and OprType = + | OpReg + | OpMem + | OpRegMem type OpEn = | None = 0 diff --git a/src/FrontEnd/Intel/Lifter.fs b/src/FrontEnd/Intel/Lifter.fs index 61c998c9a..0d0688a43 100644 --- a/src/FrontEnd/Intel/Lifter.fs +++ b/src/FrontEnd/Intel/Lifter.fs @@ -211,8 +211,7 @@ let translate (ins: Instruction) insLen bld = | OP.XRSTOR | OP.XRSTORS | OP.XSAVE | OP.XSAVEC | OP.XSAVEC64 | OP.XSAVEOPT | OP.XSAVES | OP.XSAVES64 -> LiftingUtils.sideEffects bld ins insLen UnsupportedInstruction - | OP.XTEST -> - LiftingUtils.sideEffects bld ins insLen UnsupportedInstruction + | OP.XTEST -> LiftingUtils.sideEffects bld ins insLen UnsupportedInstruction | OP.IN | OP.INVD | OP.INVLPG | OP.IRET | OP.IRETQ | OP.IRETW | OP.IRETD | OP.LAR | OP.LGDT | OP.LIDT | OP.LLDT | OP.LMSW | OP.LSL | OP.LTR | OP.OUT | OP.SGDT @@ -541,8 +540,7 @@ let translate (ins: Instruction) insLen bld = | OP.VEXTRACTI64X4 -> AVXLifter.vextracti64x4 ins insLen bld | OP.VEXTRACTPS -> SSELifter.extractps ins insLen bld | OP.VINSERTI128 -> AVXLifter.vinserti128 ins insLen bld - | OP.VMPTRLD -> - LiftingUtils.sideEffects bld ins insLen UnsupportedInstruction + | OP.VMPTRLD -> LiftingUtils.sideEffects bld ins insLen UnsupportedInstruction | OP.VPADDB -> AVXLifter.vpaddb ins insLen bld | OP.VPADDD -> AVXLifter.vpaddd ins insLen bld | OP.VPADDQ -> AVXLifter.vpaddq ins insLen bld diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 020987622..c37a8f598 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -57,7 +57,7 @@ type IntelParser(wordSz, reader) = let phlp = ParsingHelper(reader, wordSz, lifter) - let checkVectorLength (vex: VEXInfo option) insVecLen = + let matchesVectorLength (vex: VEXInfo option) insVecLen = if insVecLen = VectorLength.None then true else match vex with @@ -69,8 +69,22 @@ type IntelParser(wordSz, reader) = | _ -> false | _ -> true - let checkREXPrefix (rex: REXPrefix) insREX = - match rex with + let getOperandSize operands = + Array.map (fun o -> + match o with + | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz + | _ -> None) operands + |> Array.distinct + + let contains8BitOperandSize oprSz = + match oprSz with + | [| Some Sz8 |] -> true + | _ -> false + + let matchesREXPrefix (phlp: ParsingHelper) (insCore: InstructionCore) = + let insREX = insCore.REXPrefixType + match phlp.REXPrefix with + | _ when contains8BitOperandSize (getOperandSize insCore.Operands) -> true | REXPrefix.NOREX -> (insREX = REXPrefixType.WIG) || (insREX = REXPrefixType.W0) || (insREX = REXPrefixType.NOREX) @@ -108,14 +122,7 @@ type IntelParser(wordSz, reader) = // mandatory. Need more precise handling logic. toPrefixType baseType pref - let getOperandSize operands = - Array.map (fun o -> - match o with - | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz - | _ -> None) operands - |> Array.distinct - - let checkPrefix pref insPref = + let matchesPrefixType pref insPref = match pref with | Mandatory NP -> insPref = Mandatory NP || insPref = Legacy NP | Mandatory _ -> @@ -123,7 +130,11 @@ type IntelParser(wordSz, reader) = else pref = insPref | _ -> true - let checkPrefix2 (pref: Prefix) insPref = + let matchesInstructionPrefix (phlp: ParsingHelper) insPref = + let pref = + match phlp.VEXInfo with + | Some v -> v.VPrefixes + | _ -> phlp.Prefixes let mPref = pref &&& (Prefix.OPSIZE ||| Prefix.REPZ ||| Prefix.REPNZ) if Prefix.hasOprSz mPref then insPref = Mandatory P66 || insPref = Legacy NP elif Prefix.hasREPZ mPref then insPref = Mandatory F3 || insPref = Legacy NP @@ -133,251 +144,266 @@ type IntelParser(wordSz, reader) = insPref = Legacy NP || insPref = Mandatory NP else false - let containsSz16 oprSz = + let contains16BitOperandSize oprSz opcode = match oprSz with + | [| Some Sz16 |] when opcode = Opcode.RETNear -> false + | [| Some Sz16; _ |] when opcode = Opcode.ENTER -> false + | [| None; Some Sz16 |] when opcode = Opcode.MOV -> false | [| Some Sz16 |] | [| Some Sz16; _ |] | [| None; Some Sz16 |] (* Temp *) -> true | _ -> false - let checkSize pref operands opEn = - if opEn = OpEn.None then true + let matchesOperandSize pref (insCore: InstructionCore) = + if insCore.OpEn = OpEn.None then true else - let oprSz = getOperandSize operands - if containsSz16 oprSz then + let oprSz = getOperandSize insCore.Operands + if contains16BitOperandSize oprSz insCore.Opcode then // FIXME: 16-bit operands do not always require a 66h prefix. - pref = Legacy P66 || pref = Mandatory P66 + pref = Prefix.OPSIZE else true - let checkCPUMode wordSize mode64 compat = + let matchesCPUMode wordSize mode64 compat = match wordSize with + | WordSize.Bit64 when mode64 = Mode64.Invalid -> false | WordSize.Bit64 -> mode64 <> Mode64.NE && mode64 <> Mode64.NS // ?? | WordSize.Bit32 -> compat <> CompatLegMode.NE | _ -> failwith "Unsupported word size." - let isOpcodeExtensions = function - | ModRMType.ModRMOp0 | ModRMType.ModRMOp1 | ModRMType.ModRMOp2 - | ModRMType.ModRMOp3 | ModRMType.ModRMOp4 | ModRMType.ModRMOp5 - | ModRMType.ModRMOp6 | ModRMType.ModRMOp7 -> true + let hasOpcodeExtension = function + | ModRMType.ModRMOp0 _ | ModRMType.ModRMOp1 _ | ModRMType.ModRMOp2 _ + | ModRMType.ModRMOp3 _ | ModRMType.ModRMOp4 _ | ModRMType.ModRMOp5 _ + | ModRMType.ModRMOp6 _ | ModRMType.ModRMOp7 _ -> true | _ -> false - let checkOpcodeExtensions (span: ByteSpan) (phlp: ParsingHelper) modRMType = - if isOpcodeExtensions modRMType then + let matchesOpcodeExtensionGroup (span: ByteSpan) (phlp: ParsingHelper) + (i: InstructionCore) = + if hasOpcodeExtension i.ModRM then let modRM = span[phlp.CurrPos] let reg = (modRM >>> 3) &&& 0b111uy match reg with - | 0uy -> modRMType = ModRMType.ModRMOp0 - | 1uy -> modRMType = ModRMType.ModRMOp1 - | 2uy -> modRMType = ModRMType.ModRMOp2 - | 3uy -> modRMType = ModRMType.ModRMOp3 - | 4uy -> modRMType = ModRMType.ModRMOp4 - | 5uy -> modRMType = ModRMType.ModRMOp5 - | 6uy -> modRMType = ModRMType.ModRMOp6 - | 7uy -> modRMType = ModRMType.ModRMOp7 + | 0uy -> i.ModRM = ModRMType.ModRMOp0 OpRegMem + | 1uy -> i.ModRM = ModRMType.ModRMOp1 OpRegMem + | 2uy -> i.ModRM = ModRMType.ModRMOp2 OpRegMem + | 3uy -> i.ModRM = ModRMType.ModRMOp3 OpRegMem + | 4uy -> i.ModRM = ModRMType.ModRMOp4 OpRegMem + | 5uy -> i.ModRM = ModRMType.ModRMOp5 OpRegMem + | 6uy -> i.ModRM = ModRMType.ModRMOp6 OpRegMem + | 7uy -> i.ModRM = ModRMType.ModRMOp7 OpRegMem | _ -> false else true - let checkD8Escape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADD - | 0xC8uy -> i.Opcode = Opcode.FMUL - | 0xD0uy -> i.Opcode = Opcode.FCOM - | 0xD8uy -> i.Opcode = Opcode.FCOMP - | 0xE0uy -> i.Opcode = Opcode.FSUB - | 0xE8uy -> i.Opcode = Opcode.FSUBR - | 0xF0uy -> i.Opcode = Opcode.FDIV - | 0xF8uy -> i.Opcode = Opcode.FDIVR - | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM - - let checkD9Escape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM with - | 0xC0uy | 0xC1uy | 0xC2uy | 0xC3uy | 0xC4uy | 0xC5uy | 0xC6uy - | 0xC7uy -> i.Opcode = Opcode.FLD - | 0xC8uy | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy - | 0xD0uy -> i.Opcode = Opcode.FNOP - | 0xD1uy | 0xD2uy | 0xD3uy | 0xD4uy | 0xD5uy | 0xD6uy | 0xD7uy | 0xD8uy - | 0xD9uy | 0xDAuy | 0xDBuy | 0xDCuy | 0xDDuy | 0xDEuy | 0xDFuy -> false - | 0xE0uy -> i.Opcode = Opcode.FCHS - | 0xE1uy -> i.Opcode = Opcode.FABS - | 0xE2uy | 0xE3uy -> false - | 0xE4uy -> i.Opcode = Opcode.FTST - | 0xE5uy -> i.Opcode = Opcode.FXAM - | 0xE6uy | 0xE7uy -> false - | 0xE8uy -> i.Opcode = Opcode.FLD1 - | 0xE9uy -> i.Opcode = Opcode.FLDL2T - | 0xEAuy -> i.Opcode = Opcode.FLDL2E - | 0xEBuy -> i.Opcode = Opcode.FLDPI - | 0xECuy -> i.Opcode = Opcode.FLDLG2 - | 0xEDuy -> i.Opcode = Opcode.FLDLN2 - | 0xEEuy -> i.Opcode = Opcode.FLDZ - | 0xEFuy -> false - | 0xF0uy -> i.Opcode = Opcode.F2XM1 - | 0xF1uy -> i.Opcode = Opcode.FYL2X - | 0xF2uy -> i.Opcode = Opcode.FPTAN - | 0xF3uy -> i.Opcode = Opcode.FPATAN - | 0xF4uy -> i.Opcode = Opcode.FXTRACT - | 0xF5uy -> i.Opcode = Opcode.FPREM1 - | 0xF6uy -> i.Opcode = Opcode.FDECSTP - | 0xF7uy -> i.Opcode = Opcode.FINCSTP - | 0xF8uy -> i.Opcode = Opcode.FPREM - | 0xF9uy -> i.Opcode = Opcode.FYL2XP1 - | 0xFAuy -> i.Opcode = Opcode.FSQRT - | 0xFBuy -> i.Opcode = Opcode.FSINCOS - | 0xFCuy -> i.Opcode = Opcode.FRNDINT - | 0xFDuy -> i.Opcode = Opcode.FSCALE - | 0xFEuy -> i.Opcode = Opcode.FSIN - | 0xFFuy -> i.Opcode = Opcode.FCOS - | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM + let matchesModRMConstraint (span: ByteSpan) (phlp: ParsingHelper) + (i: InstructionCore) + oprType insReg = + let modRM = span[phlp.CurrPos] + let reg = Operands.getReg modRM + match oprType with + | OpReg -> Operands.modIsReg modRM && reg = insReg + | OpMem -> Operands.modIsMemory modRM && reg = insReg + | _ -> reg = insReg + + let matchesInstructionModRM (span: ByteSpan) (phlp: ParsingHelper) + (i: InstructionCore) = + match i.ModRM with + | ModRMType.ModRMOp0 o -> matchesModRMConstraint span phlp i o 0 + | ModRMType.ModRMOp1 o -> matchesModRMConstraint span phlp i o 1 + | ModRMType.ModRMOp2 o -> matchesModRMConstraint span phlp i o 2 + | ModRMType.ModRMOp3 o -> matchesModRMConstraint span phlp i o 3 + | ModRMType.ModRMOp4 o -> matchesModRMConstraint span phlp i o 4 + | ModRMType.ModRMOp5 o -> matchesModRMConstraint span phlp i o 5 + | ModRMType.ModRMOp6 o -> matchesModRMConstraint span phlp i o 6 + | ModRMType.ModRMOp7 o -> matchesModRMConstraint span phlp i o 7 + | ModRMType.FixedModRM v -> span[phlp.CurrPos] = v + | _ -> true - let checkDBEscape span phlp (i: InstructionCore) modRM = + let matchesX87Escape span phlp (i: InstructionCore) modRM registerFormMatcher = if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FCMOVNB - | 0xC8uy -> i.Opcode = Opcode.FCMOVNE - | 0xD0uy -> i.Opcode = Opcode.FCMOVNBE - | 0xD8uy -> i.Opcode = Opcode.FCMOVNU - | 0xE0uy -> - match modRM with - | 0xE2uy -> i.Opcode = Opcode.FCLEX - | 0xE3uy -> i.Opcode = Opcode.FINIT - | _ -> false - | 0xE8uy -> i.Opcode = Opcode.FUCOMI - | 0xF0uy -> i.Opcode = Opcode.FCOMI - | 0xF8uy -> false - | _ -> false + if i.ModRM = ModRMType.NoModRM then registerFormMatcher modRM else false else if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM - - let checkDCEscape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADD - | 0xC8uy -> i.Opcode = Opcode.FMUL - | 0xD0uy | 0xD8uy -> false - | 0xE0uy -> i.Opcode = Opcode.FSUBR - | 0xE8uy -> i.Opcode = Opcode.FSUB - | 0xF0uy -> i.Opcode = Opcode.FDIVR - | 0xF8uy -> i.Opcode = Opcode.FDIV + else matchesOpcodeExtensionGroup span phlp i + + let matchesD8Escape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADD + | 0xC8uy -> i.Opcode = Opcode.FMUL + | 0xD0uy -> i.Opcode = Opcode.FCOM + | 0xD8uy -> i.Opcode = Opcode.FCOMP + | 0xE0uy -> i.Opcode = Opcode.FSUB + | 0xE8uy -> i.Opcode = Opcode.FSUBR + | 0xF0uy -> i.Opcode = Opcode.FDIV + | 0xF8uy -> i.Opcode = Opcode.FDIVR + | _ -> false) + + let matchesD9Escape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM with + | 0xC0uy | 0xC1uy | 0xC2uy | 0xC3uy | 0xC4uy | 0xC5uy | 0xC6uy | 0xC7uy -> + i.Opcode = Opcode.FLD + | 0xC8uy | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy | 0xCFuy -> + i.Opcode = Opcode.FXCH + | 0xD0uy -> i.Opcode = Opcode.FNOP + | 0xD1uy | 0xD2uy | 0xD3uy | 0xD4uy | 0xD5uy | 0xD6uy | 0xD7uy | 0xD8uy + | 0xD9uy | 0xDAuy | 0xDBuy | 0xDCuy | 0xDDuy | 0xDEuy | 0xDFuy -> false + | 0xE0uy -> i.Opcode = Opcode.FCHS + | 0xE1uy -> i.Opcode = Opcode.FABS + | 0xE2uy | 0xE3uy -> false + | 0xE4uy -> i.Opcode = Opcode.FTST + | 0xE5uy -> i.Opcode = Opcode.FXAM + | 0xE6uy | 0xE7uy -> false + | 0xE8uy -> i.Opcode = Opcode.FLD1 + | 0xE9uy -> i.Opcode = Opcode.FLDL2T + | 0xEAuy -> i.Opcode = Opcode.FLDL2E + | 0xEBuy -> i.Opcode = Opcode.FLDPI + | 0xECuy -> i.Opcode = Opcode.FLDLG2 + | 0xEDuy -> i.Opcode = Opcode.FLDLN2 + | 0xEEuy -> i.Opcode = Opcode.FLDZ + | 0xEFuy -> false + | 0xF0uy -> i.Opcode = Opcode.F2XM1 + | 0xF1uy -> i.Opcode = Opcode.FYL2X + | 0xF2uy -> i.Opcode = Opcode.FPTAN + | 0xF3uy -> i.Opcode = Opcode.FPATAN + | 0xF4uy -> i.Opcode = Opcode.FXTRACT + | 0xF5uy -> i.Opcode = Opcode.FPREM1 + | 0xF6uy -> i.Opcode = Opcode.FDECSTP + | 0xF7uy -> i.Opcode = Opcode.FINCSTP + | 0xF8uy -> i.Opcode = Opcode.FPREM + | 0xF9uy -> i.Opcode = Opcode.FYL2XP1 + | 0xFAuy -> i.Opcode = Opcode.FSQRT + | 0xFBuy -> i.Opcode = Opcode.FSINCOS + | 0xFCuy -> i.Opcode = Opcode.FRNDINT + | 0xFDuy -> i.Opcode = Opcode.FSCALE + | 0xFEuy -> i.Opcode = Opcode.FSIN + | 0xFFuy -> i.Opcode = Opcode.FCOS + | _ -> false) + + let matchesDAEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FCMOVB + | 0xC8uy -> i.Opcode = Opcode.FCMOVE + | 0xD0uy -> i.Opcode = Opcode.FCMOVBE + | 0xD8uy -> i.Opcode = Opcode.FCMOVU + | 0xE8uy -> + match modRM with + | 0xE9uy -> i.Opcode = Opcode.FUCOMPP | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM - - let checkDDEscape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FFREE - | 0xC8uy -> false - | 0xD0uy -> i.Opcode = Opcode.FST - | 0xD8uy -> i.Opcode = Opcode.FSTP - | 0xE0uy -> i.Opcode = Opcode.FUCOM - | 0xE8uy -> i.Opcode = Opcode.FUCOMP - | 0xF0uy | 0xF8uy -> false + | _ -> false) + + let matchesDBEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FCMOVNB + | 0xC8uy -> i.Opcode = Opcode.FCMOVNE + | 0xD0uy -> i.Opcode = Opcode.FCMOVNBE + | 0xD8uy -> i.Opcode = Opcode.FCMOVNU + | 0xE0uy -> + match modRM with + | 0xE2uy -> i.Opcode = Opcode.FCLEX + | 0xE3uy -> i.Opcode = Opcode.FINIT | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM - - let checkDEEscape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADDP && i.ModRM = ModRMType.NoModRM - | 0xC8uy -> i.Opcode = Opcode.FMULP && i.ModRM = ModRMType.NoModRM - | 0xD0uy -> false - | 0xD8uy -> - match modRM with - | 0xD9uy -> i.Opcode = Opcode.FCOMPP && i.ModRM = ModRMType.NoModRM - | _ -> false - | 0xE0uy -> i.Opcode = Opcode.FSUBRP && i.ModRM = ModRMType.NoModRM - | 0xE8uy -> i.Opcode = Opcode.FSUBP && i.ModRM = ModRMType.NoModRM - | 0xF0uy -> i.Opcode = Opcode.FDIVRP && i.ModRM = ModRMType.NoModRM - | 0xF8uy -> i.Opcode = Opcode.FDIVP && i.ModRM = ModRMType.NoModRM + | 0xE8uy -> i.Opcode = Opcode.FUCOMI + | 0xF0uy -> i.Opcode = Opcode.FCOMI + | 0xF8uy -> false + | _ -> false) + + let matchesDCEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADD + | 0xC8uy -> i.Opcode = Opcode.FMUL + | 0xD0uy | 0xD8uy -> false + | 0xE0uy -> i.Opcode = Opcode.FSUBR + | 0xE8uy -> i.Opcode = Opcode.FSUB + | 0xF0uy -> i.Opcode = Opcode.FDIVR + | 0xF8uy -> i.Opcode = Opcode.FDIV + | _ -> false) + + let matchesDDEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FFREE + | 0xC8uy -> false + | 0xD0uy -> i.Opcode = Opcode.FST + | 0xD8uy -> i.Opcode = Opcode.FSTP + | 0xE0uy -> i.Opcode = Opcode.FUCOM + | 0xE8uy -> i.Opcode = Opcode.FUCOMP + | 0xF0uy | 0xF8uy -> false + | _ -> false) + + let matchesDEEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy -> i.Opcode = Opcode.FADDP + | 0xC8uy -> i.Opcode = Opcode.FMULP + | 0xD0uy -> false + | 0xD8uy -> + match modRM with + | 0xD9uy -> i.Opcode = Opcode.FCOMPP | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM - - let checkDFEscape span phlp (i: InstructionCore) modRM = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then - match modRM &&& 0xF8uy with - | 0xC0uy | 0xC8uy | 0xD0uy | 0xD8uy -> false - | 0xE0uy -> - match modRM with - | 0xE0uy -> i.Opcode = Opcode.FSTSW && i.ModRM = ModRMType.NoModRM - | _ -> false - | 0xE8uy -> i.Opcode = Opcode.FUCOMIP && i.ModRM = ModRMType.NoModRM - | 0xF0uy -> i.Opcode = Opcode.FCOMIP && i.ModRM = ModRMType.NoModRM - | 0xF8uy -> false + | 0xE0uy -> i.Opcode = Opcode.FSUBRP + | 0xE8uy -> i.Opcode = Opcode.FSUBP + | 0xF0uy -> i.Opcode = Opcode.FDIVRP + | 0xF8uy -> i.Opcode = Opcode.FDIVP + | _ -> false) + + let matchesDFEscape span phlp (i: InstructionCore) modRM = + matchesX87Escape span phlp i modRM (fun modRM -> + match modRM &&& 0xF8uy with + | 0xC0uy | 0xC8uy | 0xD0uy | 0xD8uy -> false + | 0xE0uy -> + match modRM with + | 0xE0uy -> i.Opcode = Opcode.FSTSW || i.Opcode = Opcode.FNSTSW | _ -> false - else false - else - if i.ModRM = ModRMType.NoModRM then false - else checkOpcodeExtensions span phlp i.ModRM + | 0xE8uy -> i.Opcode = Opcode.FUCOMIP + | 0xF0uy -> i.Opcode = Opcode.FCOMIP + | 0xF8uy -> false + | _ -> false) - let checkEscape (span: ByteSpan) (phlp: ParsingHelper) (i: InstructionCore) = + let matchesEscapeOpcode (span: ByteSpan) (phlp: ParsingHelper) + (i: InstructionCore) = match i.OpEn with | OpEn.None -> let modRM = span[phlp.CurrPos] match i.OpcodeByte with - | 0xD8u -> checkD8Escape span phlp i modRM - | 0xD9u -> checkD9Escape span phlp i modRM - | 0xDBu -> checkDBEscape span phlp i modRM - | 0xDCu -> checkDCEscape span phlp i modRM - | 0xDDu -> checkDDEscape span phlp i modRM - | 0xDEu -> checkDEEscape span phlp i modRM - | 0xDFu -> checkDFEscape span phlp i modRM + | 0xD8u -> matchesD8Escape span phlp i modRM + | 0xD9u -> matchesD9Escape span phlp i modRM + | 0xDAu -> matchesDAEscape span phlp i modRM + | 0xDBu -> matchesDBEscape span phlp i modRM + | 0xDCu -> matchesDCEscape span phlp i modRM + | 0xDDu -> matchesDDEscape span phlp i modRM + | 0xDEu -> matchesDEEscape span phlp i modRM + | 0xDFu -> matchesDFEscape span phlp i modRM | _ -> false | _ -> true - let findSubIndex (span: ByteSpan) (phlp: ParsingHelper) + let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length if insLen = 0 then failwith "Error: Instruction core array is empty." - elif insLen = 1 then 0 else - let opcodeByte = span[phlp.CurrPos - 1] - let pref = - convertPrefix phlp.OpcodeClass phlp.Prefixes phlp.VEXInfo opcodeByte let mutable idx = -1 let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] - let p = checkPrefix2 phlp.Prefixes insCore.PrefixType - let s = checkSize pref insCore.Operands insCore.OpEn - let c = checkCPUMode phlp.WordSize insCore.Mode64 insCore.Compat - let r = checkREXPrefix phlp.REXPrefix insCore.REXPrefixType - let v = checkVectorLength phlp.VEXInfo insCore.VectorLength - let e = checkEscape span phlp insCore - let x = checkOpcodeExtensions span phlp insCore.ModRM + let p = matchesInstructionPrefix phlp insCore.PrefixType + let s = matchesOperandSize phlp.Prefixes insCore + let c = matchesCPUMode phlp.WordSize insCore.Mode64 insCore.Compat + let r = matchesREXPrefix phlp insCore + let v = matchesVectorLength phlp.VEXInfo insCore.VectorLength + let e = matchesEscapeOpcode span phlp insCore + let x = matchesInstructionModRM span phlp insCore #if DEBUG - printfn "Checking %d: p=%b, s=%b, r=%b, v=%b, e=%b, x=%b" i p s r v e x + printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, e=%b, x=%b" + i p s c r v e x #endif if p && c && s && r && v && e && x then #if DEBUG printfn "[Success] maps: %A, pref: %A, rex: %A, vex: %A\nIdx:%d\n%A" - phlp.OpcodeClass pref phlp.REXPrefix phlp.VEXInfo i insCore + phlp.OpcodeClass phlp.Prefixes phlp.REXPrefix phlp.VEXInfo i insCore #endif idx <- i else () @@ -385,14 +411,14 @@ type IntelParser(wordSz, reader) = if idx = -1 then #if DEBUG printfn "Fail: find sub index\n maps: %A, pref: %A, rex: %A, vex: %A" - phlp.OpcodeClass pref phlp.REXPrefix phlp.VEXInfo - Array.iter (printfn " %A") ins + phlp.OpcodeClass phlp.Prefixes phlp.REXPrefix phlp.VEXInfo + Array.iteri (printfn "[%d] %A") ins #endif failwithf "No matching instruction format." else () idx - let oprSzToRegType = function + let oprSizeToRegType = function | OprSize.Sz8 -> 8 | OprSize.Sz16 -> 16 | OprSize.Sz32 -> 32 @@ -403,69 +429,64 @@ type IntelParser(wordSz, reader) = | OprSize.Sz512 -> 512 | OprSize.SzUnknown -> 0 - let getImmSz = function + let getImmediateSize = function | [| Some Sz8; None |] -> 8 | [| Some Sz16; None |] -> 16 | [| Some Sz32; None |] -> 32 | [| Some Sz64; None |] -> 64 | _ -> 0 // Temp + let setMemoryOperandContext (phlp: ParsingHelper) addrSz regSz memSz = + phlp.MemEffOprSize <- memSz + phlp.MemEffAddrSize <- addrSz + phlp.MemEffRegSize <- regSz + phlp.RegSize <- regSz + phlp.OperationSize <- regSz + + let setMemoryOperandContextWithCurrentAddr (phlp: ParsingHelper) regSz memSz = + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + setMemoryOperandContext phlp effAddrSz regSz memSz + let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) i = function | RM sz -> - let sz = oprSzToRegType sz + let sz = oprSizeToRegType sz // FIXME: need operand size determination logic - phlp.MemEffOprSize <- sz - phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp - phlp.MemEffRegSize <- sz - phlp.RegSize <- sz - phlp.OperationSize <- sz + setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemOrReg modRM span phlp | RMdiff(regSz, memSz) -> - let regSz = oprSzToRegType regSz - let memSz = oprSzToRegType memSz + let regSz = oprSizeToRegType regSz + let memSz = oprSizeToRegType memSz // FIXME: need operand size determination logic - phlp.MemEffOprSize <- memSz - phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp - phlp.MemEffRegSize <- regSz - phlp.RegSize <- regSz - phlp.OperationSize <- regSz + setMemoryOperandContextWithCurrentAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp | Reg sz when ic.OpEn = OpEn.O || ic.OpEn = OpEn.OI -> // Opcode[2:0] contains the operand. let regBit = Operands.getRM (uint8 ic.OpcodeByte) - OperandParsers.findRegRBits (oprSzToRegType sz) phlp.REXPrefix regBit + OperandParsers.findRegRBits (oprSizeToRegType sz) phlp.REXPrefix regBit |> OprReg | Reg sz -> match ic.OpEn with | OpEn.RVM when i = 1 -> OperandParsers.parseVVVVReg phlp | _ -> - OperandParsers.findRegRBits (oprSzToRegType sz) phlp.REXPrefix + OperandParsers.findRegRBits (oprSizeToRegType sz) phlp.REXPrefix (Operands.getReg modRM) |> OprReg | Mem SzUnknown -> // FIXME: need operand size determination logic let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) - phlp.MemEffOprSize <- effOprSz - phlp.MemEffAddrSize <- effAddrSz - phlp.MemEffRegSize <- effOprSz - phlp.RegSize <- effOprSz - phlp.OperationSize <- effOprSz + setMemoryOperandContext phlp effAddrSz effOprSz effOprSz OperandParsers.parseMemory modRM span (phlp: ParsingHelper) | Mem sz -> // FIXME: need operand size determination logic - let sz = oprSzToRegType sz - phlp.MemEffOprSize <- sz - phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp - phlp.MemEffRegSize <- sz - phlp.RegSize <- sz - phlp.OperationSize <- sz + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | Imm sz -> - OperandParsers.parseOprImm span phlp (oprSzToRegType sz) + OperandParsers.parseOprImm span phlp (oprSizeToRegType sz) | Rel sz -> - OperandParsers.parseOprForRelJmp span phlp (oprSzToRegType sz) + OperandParsers.parseOprForRelJmp span phlp (oprSizeToRegType sz) | FixedReg(reg, _) -> OprReg reg | STReg None -> Operands.getRM modRM |> Operands.getSTReg | STReg(Some reg) -> OprReg reg @@ -473,22 +494,47 @@ type IntelParser(wordSz, reader) = if Operands.modIsReg modRM then OperandParsers.parseBoundRegister (Operands.getRM modRM) else - let sz = oprSzToRegType sz - phlp.MemEffOprSize <- sz - phlp.MemEffAddrSize <- ParsingHelper.GetEffAddrSize phlp - phlp.MemEffRegSize <- sz - phlp.RegSize <- sz - phlp.OperationSize <- sz + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) | MMXReg -> OperandParsers.parseMMXReg (Operands.getReg modRM) - | FixedImm imm -> OprImm(int64 imm, getImmSz sz) + | MM sz -> + if Operands.modIsReg modRM then + OperandParsers.parseMMXReg (Operands.getRM modRM) + else + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz + OperandParsers.parseMemory modRM span phlp + | FixedImm imm -> OprImm(int64 imm, getImmediateSize sz) + | Moffs sz -> + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz + OperandParsers.parseOprOnlyDisp span phlp + | Sreg -> OperandParsers.parseSegReg (Operands.getReg modRM) + | Far sz -> // XXX + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) + let struct (regSz, oprSz) = + if sz = Sz16 then struct (16, 32) + elif sz = Sz32 then struct (32, 48) + else struct (64, 80) + phlp.MemEffOprSize <- oprSz + phlp.MemEffAddrSize <- effAddrSz + phlp.MemEffRegSize <- regSz + phlp.RegSize <- effOprSz + phlp.OperationSize <- oprSz + let addrSz = RegType.toByteWidth phlp.MemEffAddrSize + let addrValue = OperandParsers.parseUnsignedImm span phlp addrSz + let selector = phlp.ReadInt16 span + let absAddr = Absolute(selector, addrValue, RegType.fromByteWidth addrSz) + OprDirAddr absAddr | Unknown s -> failwithf "Need unknown operand type handling logic: %s" s | o -> failwithf "Unsupported operand type: %A" o - let arrayToOperands = function + let operandsArrayToOperands = function | [||] -> Operands.NoOperand | [| op1 |] -> Operands.OneOperand(op1) | [| op1; op2 |] -> Operands.TwoOperands(op1, op2) @@ -504,7 +550,7 @@ type IntelParser(wordSz, reader) = | ModRMType.NoModRM when ic.OpEn = OpEn.None -> phlp.ReadByte span (* Escape Opcode *) | ModRMType.NoModRM -> 0uy - | _ -> phlp.ReadByte span + | _ -> phlp.ReadByte span (* all other ModRM, including FixedModRM *) match ic.Operands with | [| NoOpr |] -> Operands.NoOperand | _ -> @@ -513,27 +559,38 @@ type IntelParser(wordSz, reader) = for i = 0 to ic.Operands.Length - 1 do let opr = ic.Operands[i] operands[i] <- parseOperand span phlp sz modRM ic i opr - operands |> arrayToOperands + operands |> operandsArrayToOperands - let handleOneByteOpcodeExtension opcodeByte = + let getOneByteInstructionCores opcodeByte = match opcodeByte with - (* MOV *) - | 0xB9uy | 0xBAuy | 0xBBuy | 0xBCuy | 0xBDuy | 0xBEuy | 0xBFuy -> - InstructionArrays.norOne[0xB8] + (* INC (Only x86) *) + | 0x41uy | 0x42uy | 0x43uy | 0x44uy | 0x45uy | 0x46uy | 0x47uy -> + InstructionArrays.norOne[0x40] + (* DEC (Only x86) *) + | 0x49uy | 0x4Auy | 0x4Buy | 0x4Cuy | 0x4Duy | 0x4Euy | 0x4Fuy -> + InstructionArrays.norOne[0x48] (* PUSH *) | 0x51uy | 0x52uy | 0x53uy | 0x54uy | 0x55uy | 0x56uy | 0x57uy | 0x58uy | 0x59uy | 0x5Auy | 0x5Buy | 0x5Cuy | 0x5Duy | 0x5Euy | 0x5Fuy -> InstructionArrays.norOne[0x50] + (* XOR *) + | 0x91uy | 0x92uy | 0x93uy | 0x94uy | 0x95uy | 0x96uy | 0x97uy -> + InstructionArrays.norOne[0x90] + (* MOV *) + | 0xB1uy | 0xB2uy | 0xB3uy | 0xB4uy | 0xB5uy | 0xB6uy | 0xB7uy -> + InstructionArrays.norOne[0xB0] + | 0xB9uy | 0xBAuy | 0xBBuy | 0xBCuy | 0xBDuy | 0xBEuy | 0xBFuy -> + InstructionArrays.norOne[0xB8] | _ -> InstructionArrays.norOne[int opcodeByte] - let handleTwoByteOpcodeExtension opcodeByte = + let getTwoByteInstructionCores opcodeByte = match opcodeByte with (* BSWAP *) | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy | 0xCFuy -> InstructionArrays.norTwo[0xC8] | _ -> InstructionArrays.norTwo[int opcodeByte] - let filterPrefixes (phlp: ParsingHelper) prefixType = + let applyMandatoryPrefixFilter (phlp: ParsingHelper) prefixType = match prefixType with | Mandatory _ -> phlp.Prefixes <- filterPrefs phlp.Prefixes | _ -> () @@ -624,7 +681,6 @@ type IntelParser(wordSz, reader) = #if LCACHE phlp.MarkPrefixEnd(prefEndPos) #endif - //oneByteParsers[int (phlp.ReadByte span)].Run(span, phlp) :> IInstruction let insCores = match phlp.VEXInfo with | Some vInfo -> @@ -658,23 +714,14 @@ type IntelParser(wordSz, reader) = | OpcodeClass.Normal ThreeBytes3A -> InstructionArrays.norThree3A[int (phlp.ReadByte span)] | OpcodeClass.Normal TwoBytes -> - handleTwoByteOpcodeExtension (phlp.ReadByte span) - | _ -> handleOneByteOpcodeExtension (phlp.ReadByte span) - let subIdx = findSubIndex span phlp insCores + getTwoByteInstructionCores (phlp.ReadByte span) + | _ -> getOneByteInstructionCores (phlp.ReadByte span) + let subIdx = findMatchingSubIndex span phlp insCores #if DEBUG //printfn "\nSelected InstructionCore(%d)\n%A\nOpcode Class: %A" // subIdx insCores[subIdx] phlp.OpcodeClass #endif - let subIdx = - match insCores[subIdx].Opcode with - | Opcode.ENDBR32 -> - match phlp.ReadByte(span) with - | 0xFAuy when insCores[subIdx + 1].Opcode = Opcode.ENDBR64 -> - subIdx + 1 - | 0xFBuy -> subIdx - | _ -> raise ParsingFailureException - | _ -> subIdx let insCore = insCores[subIdx] let operands = parseOperands span phlp insCore - filterPrefixes phlp insCore.PrefixType - newInstruction phlp insCore.Opcode operands :> IInstruction \ No newline at end of file + applyMandatoryPrefixFilter phlp insCore.PrefixType + newInstruction phlp insCore.Opcode operands :> IInstruction diff --git a/src/RearEnd/BinDisasm/Program.fs b/src/RearEnd/BinDisasm/Program.fs index cfec6c7a4..7b41e98ec 100644 --- a/src/RearEnd/BinDisasm/Program.fs +++ b/src/RearEnd/BinDisasm/Program.fs @@ -202,18 +202,18 @@ let private dumpHexString (opts: BinDisasmOpts) = let private disasm files (opts: BinDisasmOpts) = CmdOpts.sanitizeRestArgs files -#if DEBUG +//#if DEBUG let sw = Diagnostics.Stopwatch.StartNew() -#endif +//#endif try if Array.isEmpty opts.InputHexStr then dumpFiles files opts else dumpHexString opts finally Log.Out.Flush() -#if DEBUG +//#if DEBUG sw.Stop() Console.Error.WriteLine $"Total dump time: {sw.Elapsed.TotalSeconds} sec." -#endif +//#endif [] let main args = From 4cf5a828890b4337408f488965e6ce8d993126cd Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 2 Apr 2026 17:50:48 +0900 Subject: [PATCH 08/26] [Intel] Remove matchesEscapeOpcode --- src/FrontEnd/Intel/Intel.fs | 411 +++++++++++++---------------------- src/FrontEnd/Intel/Parser.fs | 170 +-------------- 2 files changed, 159 insertions(+), 422 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index c8ed90b9e..fe7f28872 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -3123,76 +3123,6 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) - { OpcodeByte = 155u - Opcode = Opcode.FCLEX - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FINIT - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FSAVE - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "M94/108BYTE" |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FSTCW - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Mem Sz16 |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FSTENV - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "M14/28BYTE" |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FSTSW - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Mem Sz16 |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } - { OpcodeByte = 155u - Opcode = Opcode.FSTSW - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit) |] - OpEn = OpEn.None - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } { OpcodeByte = 155u Opcode = Opcode.WAIT PrefixType = Legacy NP @@ -4354,7 +4284,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -4413,6 +4343,26 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 200(0xC8) + { OpcodeByte = 200u + Opcode = Opcode.ENTER + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16; FixedImm 0 |] + OpEn = OpEn.II + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 200u + Opcode = Opcode.ENTER + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Imm Sz16; FixedImm 1 |] + OpEn = OpEn.II + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 200u Opcode = Opcode.ENTER PrefixType = Legacy NP @@ -5202,7 +5152,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0x0Auy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid @@ -5224,7 +5174,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0x0Auy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid @@ -5300,7 +5250,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5320,7 +5270,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5330,7 +5280,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5350,7 +5300,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5360,7 +5310,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5380,7 +5330,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5400,7 +5350,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5420,7 +5370,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5440,7 +5390,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5460,7 +5410,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5472,7 +5422,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5482,7 +5432,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5492,7 +5442,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5502,7 +5452,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFFuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5512,7 +5462,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF6uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5522,7 +5472,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF7uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5542,7 +5492,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5552,7 +5502,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5562,7 +5512,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5572,7 +5522,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEAuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5582,7 +5532,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEBuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5592,7 +5542,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xECuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5602,7 +5552,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEDuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5612,7 +5562,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xEEuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5642,7 +5592,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5652,7 +5602,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5662,7 +5612,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF5uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5672,7 +5622,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFCuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5682,7 +5632,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFDuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5692,7 +5642,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFEuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5702,7 +5652,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFBuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5712,7 +5662,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xFAuy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5762,7 +5712,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE4uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5772,7 +5722,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE5uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5782,7 +5732,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5792,7 +5742,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5802,7 +5752,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF4uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5812,7 +5762,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5822,7 +5772,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5844,7 +5794,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5854,7 +5804,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5864,7 +5814,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5874,7 +5824,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5954,7 +5904,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5966,7 +5916,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE2uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5976,7 +5926,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5986,7 +5936,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5996,7 +5946,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6006,7 +5956,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6016,7 +5966,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6026,7 +5976,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6046,7 +5996,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE3uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6118,7 +6068,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6158,7 +6108,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6178,7 +6128,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6198,7 +6148,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6218,7 +6168,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6238,7 +6188,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6250,7 +6200,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6310,7 +6260,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6330,7 +6280,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6350,7 +6300,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6360,7 +6310,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6370,7 +6320,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6380,7 +6330,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6392,7 +6342,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6402,7 +6352,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6422,7 +6372,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xD9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6432,7 +6382,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6442,7 +6392,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6462,7 +6412,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6472,7 +6422,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6512,7 +6462,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6522,7 +6472,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6542,7 +6492,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6552,7 +6502,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6572,7 +6522,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6582,7 +6532,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE1uy Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6624,7 +6574,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6634,7 +6584,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6704,7 +6654,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xE0uy Operands = [| FixedReg(Register.AX, Explicit) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -7746,13 +7696,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 202uy + ModRM = ModRMType.FixedModRM 0xCAuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.CLUI + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7766,7 +7716,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpMem + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7776,7 +7726,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpMem + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "M16&32" |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7786,7 +7736,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpMem + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Unknown "M16&32" |] OpEn = OpEn.M Mode64 = Mode64.NE @@ -7796,7 +7746,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpMem + ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "M16&64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7806,7 +7756,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpMem + ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Unknown "M16&64" |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7826,7 +7776,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 200uy + ModRM = ModRMType.FixedModRM 0xC8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -7836,13 +7786,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 201uy + ModRM = ModRMType.FixedModRM 0xC9uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.PCONFIG + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7852,7 +7802,7 @@ let (norTwo: InstructionCore[][]) = Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.RDMSRLIST + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7866,7 +7816,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 238uy + ModRM = ModRMType.FixedModRM 0xEEuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -7876,7 +7826,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 249uy + ModRM = ModRMType.FixedModRM 0xF9uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -7886,7 +7836,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpMem + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -7896,13 +7846,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xEAuy + ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.SERIALIZE + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7926,7 +7876,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpMem + ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7936,7 +7886,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpMem + ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7976,13 +7926,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 203uy + ModRM = ModRMType.FixedModRM 0xCBuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.STUI + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7996,13 +7946,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 248uy + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid } { OpcodeByte = 1u - Opcode = Opcode.TESTUI + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8012,7 +7962,7 @@ let (norTwo: InstructionCore[][]) = Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.UIRET + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8022,7 +7972,7 @@ let (norTwo: InstructionCore[][]) = Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.WRMSRLIST + Opcode = Opcode.InvalOP PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8032,7 +7982,7 @@ let (norTwo: InstructionCore[][]) = Mode64 = Mode64.None Compat = CompatLegMode.None } { OpcodeByte = 1u - Opcode = Opcode.WRMSRNS + Opcode = Opcode.InvalOP PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8046,7 +7996,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 239uy + ModRM = ModRMType.FixedModRM 0xEFuy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8056,7 +8006,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 213uy + ModRM = ModRMType.FixedModRM 0xD5uy Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.None @@ -8066,13 +8016,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 208uy + ModRM = ModRMType.FixedModRM 0xD0uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.XRESLDTRK + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8086,13 +8036,13 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 209uy + ModRM = ModRMType.FixedModRM 0xD1uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } { OpcodeByte = 1u - Opcode = Opcode.XSUSLDTRK + Opcode = Opcode.InvalOP PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -8106,7 +8056,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 214uy + ModRM = ModRMType.FixedModRM 0xD6uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -8879,7 +8829,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "CR0?CR7" |] + Operands = [| Reg Sz32; Unknown "CR0–CR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8889,7 +8839,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "CR0?CR7" |] + Operands = [| Reg Sz64; Unknown "CR0–CR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8911,7 +8861,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "DR0?DR7" |] + Operands = [| Reg Sz32; Unknown "DR0–DR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8921,7 +8871,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "DR0?DR7" |] + Operands = [| Reg Sz64; Unknown "DR0–DR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8933,7 +8883,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "CR0?CR7"; Reg Sz32 |] + Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8943,7 +8893,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "CR0?CR7"; Reg Sz64 |] + Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -8965,7 +8915,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "DR0?DR7"; Reg Sz32 |] + Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -8975,7 +8925,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "DR0?DR7"; Reg Sz64 |] + Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -13022,7 +12972,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpMem + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13032,7 +12982,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpMem + ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13042,7 +12992,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpMem + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13052,7 +13002,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpMem + ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13132,7 +13082,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 232uy + ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -13142,7 +13092,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 240uy + ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None @@ -13212,7 +13162,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 248uy + ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -13585,7 +13535,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.MOVZX - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem @@ -13837,7 +13787,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem @@ -17836,7 +17786,7 @@ let (norThree3A: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| Imm Sz8; FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -24763,26 +24713,6 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 155(0x9B) - { OpcodeByte = 155u - Opcode = Opcode.VFMSUB132SD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.W1 - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { OpcodeByte = 155u - Opcode = Opcode.VFMSUB132SS - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.W0 - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -40291,36 +40221,6 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 155(0x9B) - { OpcodeByte = 155u - Opcode = Opcode.VFMSUB132SD - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.W1 - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { OpcodeByte = 155u - Opcode = Opcode.VFMSUB132SS - PrefixType = Mandatory P66 - REXPrefixType = REXPrefixType.W0 - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } - { OpcodeByte = 155u - Opcode = Opcode.V4FMADDSS - PrefixType = Mandatory F3 - REXPrefixType = REXPrefixType.W0 - VectorLength = VectorLength.V128 - ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] - OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -44778,4 +44678,5 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 255(0xFF) |] - |] \ No newline at end of file + |] + diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index c37a8f598..f515878b8 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -217,169 +217,6 @@ type IntelParser(wordSz, reader) = | ModRMType.FixedModRM v -> span[phlp.CurrPos] = v | _ -> true - let matchesX87Escape span phlp (i: InstructionCore) modRM registerFormMatcher = - if Operands.getMod modRM = 0b11 then - if i.ModRM = ModRMType.NoModRM then registerFormMatcher modRM - else false - else - if i.ModRM = ModRMType.NoModRM then false - else matchesOpcodeExtensionGroup span phlp i - - let matchesD8Escape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADD - | 0xC8uy -> i.Opcode = Opcode.FMUL - | 0xD0uy -> i.Opcode = Opcode.FCOM - | 0xD8uy -> i.Opcode = Opcode.FCOMP - | 0xE0uy -> i.Opcode = Opcode.FSUB - | 0xE8uy -> i.Opcode = Opcode.FSUBR - | 0xF0uy -> i.Opcode = Opcode.FDIV - | 0xF8uy -> i.Opcode = Opcode.FDIVR - | _ -> false) - - let matchesD9Escape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM with - | 0xC0uy | 0xC1uy | 0xC2uy | 0xC3uy | 0xC4uy | 0xC5uy | 0xC6uy | 0xC7uy -> - i.Opcode = Opcode.FLD - | 0xC8uy | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy | 0xCFuy -> - i.Opcode = Opcode.FXCH - | 0xD0uy -> i.Opcode = Opcode.FNOP - | 0xD1uy | 0xD2uy | 0xD3uy | 0xD4uy | 0xD5uy | 0xD6uy | 0xD7uy | 0xD8uy - | 0xD9uy | 0xDAuy | 0xDBuy | 0xDCuy | 0xDDuy | 0xDEuy | 0xDFuy -> false - | 0xE0uy -> i.Opcode = Opcode.FCHS - | 0xE1uy -> i.Opcode = Opcode.FABS - | 0xE2uy | 0xE3uy -> false - | 0xE4uy -> i.Opcode = Opcode.FTST - | 0xE5uy -> i.Opcode = Opcode.FXAM - | 0xE6uy | 0xE7uy -> false - | 0xE8uy -> i.Opcode = Opcode.FLD1 - | 0xE9uy -> i.Opcode = Opcode.FLDL2T - | 0xEAuy -> i.Opcode = Opcode.FLDL2E - | 0xEBuy -> i.Opcode = Opcode.FLDPI - | 0xECuy -> i.Opcode = Opcode.FLDLG2 - | 0xEDuy -> i.Opcode = Opcode.FLDLN2 - | 0xEEuy -> i.Opcode = Opcode.FLDZ - | 0xEFuy -> false - | 0xF0uy -> i.Opcode = Opcode.F2XM1 - | 0xF1uy -> i.Opcode = Opcode.FYL2X - | 0xF2uy -> i.Opcode = Opcode.FPTAN - | 0xF3uy -> i.Opcode = Opcode.FPATAN - | 0xF4uy -> i.Opcode = Opcode.FXTRACT - | 0xF5uy -> i.Opcode = Opcode.FPREM1 - | 0xF6uy -> i.Opcode = Opcode.FDECSTP - | 0xF7uy -> i.Opcode = Opcode.FINCSTP - | 0xF8uy -> i.Opcode = Opcode.FPREM - | 0xF9uy -> i.Opcode = Opcode.FYL2XP1 - | 0xFAuy -> i.Opcode = Opcode.FSQRT - | 0xFBuy -> i.Opcode = Opcode.FSINCOS - | 0xFCuy -> i.Opcode = Opcode.FRNDINT - | 0xFDuy -> i.Opcode = Opcode.FSCALE - | 0xFEuy -> i.Opcode = Opcode.FSIN - | 0xFFuy -> i.Opcode = Opcode.FCOS - | _ -> false) - - let matchesDAEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FCMOVB - | 0xC8uy -> i.Opcode = Opcode.FCMOVE - | 0xD0uy -> i.Opcode = Opcode.FCMOVBE - | 0xD8uy -> i.Opcode = Opcode.FCMOVU - | 0xE8uy -> - match modRM with - | 0xE9uy -> i.Opcode = Opcode.FUCOMPP - | _ -> false - | _ -> false) - - let matchesDBEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FCMOVNB - | 0xC8uy -> i.Opcode = Opcode.FCMOVNE - | 0xD0uy -> i.Opcode = Opcode.FCMOVNBE - | 0xD8uy -> i.Opcode = Opcode.FCMOVNU - | 0xE0uy -> - match modRM with - | 0xE2uy -> i.Opcode = Opcode.FCLEX - | 0xE3uy -> i.Opcode = Opcode.FINIT - | _ -> false - | 0xE8uy -> i.Opcode = Opcode.FUCOMI - | 0xF0uy -> i.Opcode = Opcode.FCOMI - | 0xF8uy -> false - | _ -> false) - - let matchesDCEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADD - | 0xC8uy -> i.Opcode = Opcode.FMUL - | 0xD0uy | 0xD8uy -> false - | 0xE0uy -> i.Opcode = Opcode.FSUBR - | 0xE8uy -> i.Opcode = Opcode.FSUB - | 0xF0uy -> i.Opcode = Opcode.FDIVR - | 0xF8uy -> i.Opcode = Opcode.FDIV - | _ -> false) - - let matchesDDEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FFREE - | 0xC8uy -> false - | 0xD0uy -> i.Opcode = Opcode.FST - | 0xD8uy -> i.Opcode = Opcode.FSTP - | 0xE0uy -> i.Opcode = Opcode.FUCOM - | 0xE8uy -> i.Opcode = Opcode.FUCOMP - | 0xF0uy | 0xF8uy -> false - | _ -> false) - - let matchesDEEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy -> i.Opcode = Opcode.FADDP - | 0xC8uy -> i.Opcode = Opcode.FMULP - | 0xD0uy -> false - | 0xD8uy -> - match modRM with - | 0xD9uy -> i.Opcode = Opcode.FCOMPP - | _ -> false - | 0xE0uy -> i.Opcode = Opcode.FSUBRP - | 0xE8uy -> i.Opcode = Opcode.FSUBP - | 0xF0uy -> i.Opcode = Opcode.FDIVRP - | 0xF8uy -> i.Opcode = Opcode.FDIVP - | _ -> false) - - let matchesDFEscape span phlp (i: InstructionCore) modRM = - matchesX87Escape span phlp i modRM (fun modRM -> - match modRM &&& 0xF8uy with - | 0xC0uy | 0xC8uy | 0xD0uy | 0xD8uy -> false - | 0xE0uy -> - match modRM with - | 0xE0uy -> i.Opcode = Opcode.FSTSW || i.Opcode = Opcode.FNSTSW - | _ -> false - | 0xE8uy -> i.Opcode = Opcode.FUCOMIP - | 0xF0uy -> i.Opcode = Opcode.FCOMIP - | 0xF8uy -> false - | _ -> false) - - let matchesEscapeOpcode (span: ByteSpan) (phlp: ParsingHelper) - (i: InstructionCore) = - match i.OpEn with - | OpEn.None -> - let modRM = span[phlp.CurrPos] - match i.OpcodeByte with - | 0xD8u -> matchesD8Escape span phlp i modRM - | 0xD9u -> matchesD9Escape span phlp i modRM - | 0xDAu -> matchesDAEscape span phlp i modRM - | 0xDBu -> matchesDBEscape span phlp i modRM - | 0xDCu -> matchesDCEscape span phlp i modRM - | 0xDDu -> matchesDDEscape span phlp i modRM - | 0xDEu -> matchesDEEscape span phlp i modRM - | 0xDFu -> matchesDFEscape span phlp i modRM - | _ -> false - | _ -> true - let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length @@ -394,13 +231,12 @@ type IntelParser(wordSz, reader) = let c = matchesCPUMode phlp.WordSize insCore.Mode64 insCore.Compat let r = matchesREXPrefix phlp insCore let v = matchesVectorLength phlp.VEXInfo insCore.VectorLength - let e = matchesEscapeOpcode span phlp insCore let x = matchesInstructionModRM span phlp insCore #if DEBUG - printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, e=%b, x=%b" - i p s c r v e x + printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, x=%b" + i p s c r v x #endif - if p && c && s && r && v && e && x then + if p && c && s && r && v && x then #if DEBUG printfn "[Success] maps: %A, pref: %A, rex: %A, vex: %A\nIdx:%d\n%A" phlp.OpcodeClass phlp.Prefixes phlp.REXPrefix phlp.VEXInfo i insCore From b962ef267fc6cc97873f47217c430b79296314f3 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Mon, 6 Apr 2026 10:57:30 +0900 Subject: [PATCH 09/26] [Intel] Update InstructionCore array --- src/FrontEnd/Intel/Intel.fs | 1904 +++++++++++++++++++++++++++--- src/FrontEnd/Intel/IntelTypes.fs | 10 +- src/FrontEnd/Intel/Parser.fs | 36 +- 3 files changed, 1754 insertions(+), 196 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index fe7f28872..60b89ef8b 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -1223,18 +1223,158 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 65(0x41) + { OpcodeByte = 65u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 65u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) + { OpcodeByte = 66u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 66u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) + { OpcodeByte = 67u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 67u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 68(0x44) + { OpcodeByte = 68u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 68u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) + { OpcodeByte = 69u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 69u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 70(0x46) + { OpcodeByte = 70u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 70u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 71(0x47) + { OpcodeByte = 71u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 71u + Opcode = Opcode.INC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 72(0x48) { OpcodeByte = 72u @@ -1259,18 +1399,158 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 73(0x49) + { OpcodeByte = 73u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 73u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 74(0x4A) + { OpcodeByte = 74u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 74u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 75(0x4B) + { OpcodeByte = 75u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 75u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 76(0x4C) + { OpcodeByte = 76u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 76u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 77(0x4D) + { OpcodeByte = 77u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 77u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 78(0x4E) + { OpcodeByte = 78u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 78u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 79(0x4F) + { OpcodeByte = 79u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 79u + Opcode = Opcode.DEC + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } |] [| // index 80(0x50) { OpcodeByte = 80u @@ -1305,18 +1585,228 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 81(0x51) + { OpcodeByte = 81u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 81u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 81u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 82(0x52) + { OpcodeByte = 82u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 82u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 82u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 83(0x53) + { OpcodeByte = 83u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 83u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 83u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 84(0x54) + { OpcodeByte = 84u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 84u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 84u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 85(0x55) + { OpcodeByte = 85u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 85u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 85u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 86(0x56) + { OpcodeByte = 86u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 86u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 86u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 87(0x57) + { OpcodeByte = 87u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 87u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 87u + Opcode = Opcode.PUSH + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -1351,18 +1841,228 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 89(0x59) + { OpcodeByte = 89u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 89u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 89u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 90(0x5A) + { OpcodeByte = 90u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 90u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 90u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 91(0x5B) + { OpcodeByte = 91u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 91u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 91u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 92(0x5C) + { OpcodeByte = 92u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 92u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 92u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 93(0x5D) + { OpcodeByte = 93u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 93u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 93u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 94(0x5E) + { OpcodeByte = 94u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 94u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 94u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 95(0x5F) + { OpcodeByte = 95u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 95u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } + { OpcodeByte = 95u + Opcode = Opcode.POP + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -1415,7 +2115,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16&16" |] + Operands = [| Reg Sz16; Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -3023,18 +3723,438 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 145(0x91) + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 145u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 146(0x92) + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 146u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 147(0x93) + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 147u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 148(0x94) + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 148u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 149(0x95) + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 149u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 150(0x96) + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 150u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 151(0x97) + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 151u + Opcode = Opcode.XCHG + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -3817,18 +4937,88 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid } |] [| // index 177(0xB1) + { OpcodeByte = 177u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 178(0xB2) + { OpcodeByte = 178u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 179(0xB3) + { OpcodeByte = 179u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 180(0xB4) + { OpcodeByte = 180u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 181(0xB5) + { OpcodeByte = 181u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 182(0xB6) + { OpcodeByte = 182u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 183(0xB7) + { OpcodeByte = 183u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz8; Imm Sz8 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -3863,18 +5053,228 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 185(0xB9) + { OpcodeByte = 185u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 185u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 185u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 186(0xBA) + { OpcodeByte = 186u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 186u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 186u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 187(0xBB) + { OpcodeByte = 187u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 187u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 187u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 188(0xBC) + { OpcodeByte = 188u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 188u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 188u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 189(0xBD) + { OpcodeByte = 189u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 189u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 189u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 190(0xBE) + { OpcodeByte = 190u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 190u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 190u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 191(0xBF) + { OpcodeByte = 191u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz16; Imm Sz16 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 191u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32; Imm Sz32 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 191u + Opcode = Opcode.MOV + PrefixType = Legacy NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64; Imm Sz64 |] + OpEn = OpEn.OI + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 192(0xC0) { OpcodeByte = 192u @@ -4231,7 +5631,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16:16" |] + Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -4241,7 +5641,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M16:32" |] + Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -4253,7 +5653,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16:16" |] + Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -4263,7 +5663,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M16:32" |] + Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid } @@ -5240,7 +6640,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5250,7 +6650,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5260,7 +6660,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5270,7 +6670,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD0uy + ModRM = ModRMType.STiModRM 0xD0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5290,7 +6690,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5300,7 +6700,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD8uy + ModRM = ModRMType.STiModRM 0xD8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5320,7 +6720,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5330,7 +6730,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF0uy + ModRM = ModRMType.STiModRM 0xF0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5340,7 +6740,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5350,7 +6750,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF8uy + ModRM = ModRMType.STiModRM 0xF8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5360,7 +6760,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5370,7 +6770,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5380,7 +6780,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5390,7 +6790,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE0uy + ModRM = ModRMType.STiModRM 0xE0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5400,7 +6800,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5410,7 +6810,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5482,7 +6882,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5492,7 +6892,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5572,7 +6972,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5582,7 +6982,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5672,7 +7072,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5682,7 +7082,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5692,7 +7092,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5702,7 +7102,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5732,7 +7132,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5784,7 +7184,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5794,7 +7194,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5804,7 +7204,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5814,7 +7214,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD0uy + ModRM = ModRMType.STiModRM 0xD0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5824,7 +7224,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD8uy + ModRM = ModRMType.STiModRM 0xD8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5834,7 +7234,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5844,7 +7244,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5854,7 +7254,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5864,7 +7264,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5874,7 +7274,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5884,7 +7284,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5894,7 +7294,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5926,7 +7326,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5936,7 +7336,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5946,7 +7346,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD0uy + ModRM = ModRMType.STiModRM 0xD0uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5956,7 +7356,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD8uy + ModRM = ModRMType.STiModRM 0xD8uy Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5966,7 +7366,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF0uy + ModRM = ModRMType.STiModRM 0xF0uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5976,7 +7376,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -5986,7 +7386,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6006,7 +7406,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6016,7 +7416,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6026,7 +7426,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6036,7 +7436,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6046,7 +7446,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6058,7 +7458,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6068,7 +7468,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6078,7 +7478,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6088,7 +7488,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6098,7 +7498,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6108,7 +7508,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF8uy + ModRM = ModRMType.STiModRM 0xF8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6118,7 +7518,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6128,7 +7528,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF0uy + ModRM = ModRMType.STiModRM 0xF0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6138,7 +7538,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6148,7 +7548,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6158,7 +7558,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6168,7 +7568,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6178,7 +7578,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6188,7 +7588,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE0uy + ModRM = ModRMType.STiModRM 0xE0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6200,7 +7600,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6210,7 +7610,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6220,7 +7620,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6230,7 +7630,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6240,7 +7640,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6250,7 +7650,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6260,7 +7660,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD0uy + ModRM = ModRMType.STiModRM 0xD0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6270,7 +7670,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6280,7 +7680,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xD8uy + ModRM = ModRMType.STiModRM 0xD8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6290,7 +7690,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6300,7 +7700,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE0uy + ModRM = ModRMType.STiModRM 0xE0uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6320,7 +7720,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6342,7 +7742,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC0uy + ModRM = ModRMType.STiModRM 0xC0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6362,7 +7762,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6382,7 +7782,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF8uy + ModRM = ModRMType.STiModRM 0xF8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6402,7 +7802,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6412,7 +7812,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF0uy + ModRM = ModRMType.STiModRM 0xF0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6432,7 +7832,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6442,7 +7842,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6452,7 +7852,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6462,7 +7862,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xC8uy + ModRM = ModRMType.STiModRM 0xC8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6482,7 +7882,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6492,7 +7892,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6512,7 +7912,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6522,7 +7922,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE0uy + ModRM = ModRMType.STiModRM 0xE0uy Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6542,7 +7942,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6554,7 +7954,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6564,7 +7964,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6574,7 +7974,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xF0uy + ModRM = ModRMType.STiModRM 0xF0uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6584,7 +7984,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.FixedModRM 0xE8uy + ModRM = ModRMType.STiModRM 0xE8uy Operands = [| STReg None; STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6594,7 +7994,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6604,7 +8004,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6614,7 +8014,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6624,7 +8024,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6634,7 +8034,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -6644,7 +8044,7 @@ let (norOne: InstructionCore[][]) = PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid @@ -7449,7 +8849,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Unknown "M16:16" |] + Operands = [| Far Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -7459,7 +8859,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Unknown "M16:32" |] + Operands = [| Far Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -7469,7 +8869,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Unknown "M16:64" |] + Operands = [| Far Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -7569,7 +8969,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "M16:16" |] + Operands = [| Far Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -7579,7 +8979,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "M16:32" |] + Operands = [| Far Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -7589,7 +8989,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "M16:64" |] + Operands = [| Far Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -7716,7 +9116,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7726,8 +9126,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "M16&32" |] + ModRM = ModRMType.ModRMOp2 OpMem + Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -7736,8 +9136,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Unknown "M16&32" |] + ModRM = ModRMType.ModRMOp3 OpMem + Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid } @@ -7746,8 +9146,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "M16&64" |] + ModRM = ModRMType.ModRMOp2 OpMem + Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -7756,8 +9156,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Unknown "M16&64" |] + ModRM = ModRMType.ModRMOp3 OpMem + Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -7836,7 +9236,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -7876,7 +9276,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -7886,7 +9286,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -12972,7 +14372,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -12982,7 +14382,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp7 OpRegMem + ModRM = ModRMType.ModRMOp7 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -12992,7 +14392,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13002,7 +14402,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13012,7 +14412,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13022,7 +14422,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13032,7 +14432,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13042,7 +14442,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid @@ -13052,7 +14452,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -13062,7 +14462,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None @@ -13072,7 +14472,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13122,7 +14522,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13132,7 +14532,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp0 OpRegMem + ModRM = ModRMType.ModRMOp0 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13142,7 +14542,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13152,7 +14552,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp1 OpRegMem + ModRM = ModRMType.ModRMOp1 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13172,7 +14572,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13212,7 +14612,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13222,7 +14622,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp2 OpRegMem + ModRM = ModRMType.ModRMOp2 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13232,7 +14632,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13242,7 +14642,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp3 OpRegMem + ModRM = ModRMType.ModRMOp3 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13252,7 +14652,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13262,7 +14662,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp5 OpRegMem + ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13272,7 +14672,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13282,7 +14682,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp4 OpRegMem + ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13292,7 +14692,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13302,7 +14702,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem + ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None @@ -13391,7 +14791,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16:16" |] + Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13401,7 +14801,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M16:32" |] + Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13411,7 +14811,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "M16:64" |] + Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -13455,7 +14855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16:16" |] + Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13465,7 +14865,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M16:32" |] + Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13475,7 +14875,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "M16:64" |] + Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -13487,7 +14887,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Unknown "M16:16" |] + Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13497,7 +14897,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M16:32" |] + Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid } @@ -13507,7 +14907,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "M16:64" |] + Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE } @@ -14311,18 +15711,158 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE } |] [| // index 201(0xC9) + { OpcodeByte = 201u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 201u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 202(0xCA) + { OpcodeByte = 202u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 202u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 203(0xCB) + { OpcodeByte = 203u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 203u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 204(0xCC) + { OpcodeByte = 204u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 204u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 205(0xCD) + { OpcodeByte = 205u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 205u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 206(0xCE) + { OpcodeByte = 206u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 206u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 207(0xCF) + { OpcodeByte = 207u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.NOREX + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz32 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + { OpcodeByte = 207u + Opcode = Opcode.BSWAP + PrefixType = Mandatory NP + REXPrefixType = REXPrefixType.REXW + VectorLength = VectorLength.None + ModRM = ModRMType.NoModRM + Operands = [| Reg Sz64 |] + OpEn = OpEn.O + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 208(0xD0) { OpcodeByte = 208u @@ -24713,6 +26253,26 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 155(0x9B) + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -40221,6 +41781,36 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.None } |] [| // index 155(0x9B) + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SD + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W1 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 155u + Opcode = Opcode.VFMSUB132SS + PrefixType = Mandatory P66 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + OpEn = OpEn.B + Mode64 = Mode64.None + Compat = CompatLegMode.None } + { OpcodeByte = 155u + Opcode = Opcode.V4FMADDSS + PrefixType = Mandatory F3 + REXPrefixType = REXPrefixType.W0 + VectorLength = VectorLength.V128 + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] + OpEn = OpEn.A + Mode64 = Mode64.None + Compat = CompatLegMode.None } |] [| // index 156(0x9C) { OpcodeByte = 156u diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 7309bf89a..b3beaf40a 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -75,13 +75,6 @@ and Visibility = | Explicit | Implicit -//type Operands = -// | NoOperand -// | OneOperand of OperandType -// | TwoOperands of OperandType * OperandType -// | ThreeOperands of OperandType * OperandType * OperandType -// | FourOperands of OperandType * OperandType * OperandType * OperandType - type ModRMType = | NoModRM | ModRM of OprType (* /r *) @@ -93,7 +86,8 @@ type ModRMType = | ModRMOp5 of OprType (* /5 *) | ModRMOp6 of OprType (* /6 *) | ModRMOp7 of OprType (* /7 *) - | FixedModRM of byte (* /digit *) + | FixedModRM of byte (* /digit: fully fixed ModRM byte *) + | STiModRM of byte (* ex) C0+i: mod=11, low 3 bits select ST(i) *) and OprType = | OpReg diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index f515878b8..22a5c78a2 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -215,6 +215,9 @@ type IntelParser(wordSz, reader) = | ModRMType.ModRMOp6 o -> matchesModRMConstraint span phlp i o 6 | ModRMType.ModRMOp7 o -> matchesModRMConstraint span phlp i o 7 | ModRMType.FixedModRM v -> span[phlp.CurrPos] = v + | ModRMType.STiModRM v -> + let modRM = span[phlp.CurrPos] + v <= modRM && modRM <= v + 7uy | _ -> true let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) @@ -397,35 +400,6 @@ type IntelParser(wordSz, reader) = operands[i] <- parseOperand span phlp sz modRM ic i opr operands |> operandsArrayToOperands - let getOneByteInstructionCores opcodeByte = - match opcodeByte with - (* INC (Only x86) *) - | 0x41uy | 0x42uy | 0x43uy | 0x44uy | 0x45uy | 0x46uy | 0x47uy -> - InstructionArrays.norOne[0x40] - (* DEC (Only x86) *) - | 0x49uy | 0x4Auy | 0x4Buy | 0x4Cuy | 0x4Duy | 0x4Euy | 0x4Fuy -> - InstructionArrays.norOne[0x48] - (* PUSH *) - | 0x51uy | 0x52uy | 0x53uy | 0x54uy | 0x55uy | 0x56uy | 0x57uy - | 0x58uy | 0x59uy | 0x5Auy | 0x5Buy | 0x5Cuy | 0x5Duy | 0x5Euy | 0x5Fuy -> - InstructionArrays.norOne[0x50] - (* XOR *) - | 0x91uy | 0x92uy | 0x93uy | 0x94uy | 0x95uy | 0x96uy | 0x97uy -> - InstructionArrays.norOne[0x90] - (* MOV *) - | 0xB1uy | 0xB2uy | 0xB3uy | 0xB4uy | 0xB5uy | 0xB6uy | 0xB7uy -> - InstructionArrays.norOne[0xB0] - | 0xB9uy | 0xBAuy | 0xBBuy | 0xBCuy | 0xBDuy | 0xBEuy | 0xBFuy -> - InstructionArrays.norOne[0xB8] - | _ -> InstructionArrays.norOne[int opcodeByte] - - let getTwoByteInstructionCores opcodeByte = - match opcodeByte with - (* BSWAP *) - | 0xC9uy | 0xCAuy | 0xCBuy | 0xCCuy | 0xCDuy | 0xCEuy | 0xCFuy -> - InstructionArrays.norTwo[0xC8] - | _ -> InstructionArrays.norTwo[int opcodeByte] - let applyMandatoryPrefixFilter (phlp: ParsingHelper) prefixType = match prefixType with | Mandatory _ -> phlp.Prefixes <- filterPrefs phlp.Prefixes @@ -550,8 +524,8 @@ type IntelParser(wordSz, reader) = | OpcodeClass.Normal ThreeBytes3A -> InstructionArrays.norThree3A[int (phlp.ReadByte span)] | OpcodeClass.Normal TwoBytes -> - getTwoByteInstructionCores (phlp.ReadByte span) - | _ -> getOneByteInstructionCores (phlp.ReadByte span) + InstructionArrays.norTwo[int (phlp.ReadByte span)] + | _ -> InstructionArrays.norOne[int (phlp.ReadByte span)] let subIdx = findMatchingSubIndex span phlp insCores #if DEBUG //printfn "\nSelected InstructionCore(%d)\n%A\nOpcode Class: %A" From 2122c682e785c6d569ef53bc7213f9f88ec34994 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 7 Apr 2026 08:57:23 +0900 Subject: [PATCH 10/26] [Intel] Update Bit mode support --- src/FrontEnd/Intel/Intel.fs | 11360 ++++++++++++++++----------------- src/FrontEnd/Intel/Parser.fs | 5 +- 2 files changed, 5683 insertions(+), 5682 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 60b89ef8b..282000c2d 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -5687,8 +5687,8 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -5729,8 +5729,8 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Rel Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.XBEGIN PrefixType = Legacy NP @@ -5739,8 +5739,8 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xF8uy Operands = [| Rel Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -8385,8 +8385,8 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -8407,8 +8407,8 @@ let (norOne: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -9099,8 +9099,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xCAuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9109,8 +9109,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xEEuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 1u Opcode = Opcode.INVLPG PrefixType = Mandatory NP @@ -9199,8 +9199,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xC5uy Operands = [| NoOpr |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -9210,7 +9210,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 1u Opcode = Opcode.RDPKRU PrefixType = Mandatory NP @@ -9219,8 +9219,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xEEuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.RDTSCP PrefixType = Mandatory NP @@ -9239,8 +9239,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.SAVEPREVSSP PrefixType = Mandatory F3 @@ -9249,8 +9249,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9259,8 +9259,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.SETSSBSY PrefixType = Mandatory F3 @@ -9269,8 +9269,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.SGDT PrefixType = Mandatory NP @@ -9329,8 +9329,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xCBuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9339,8 +9339,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xEFuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 1u Opcode = Opcode.SWAPGS PrefixType = Mandatory NP @@ -9359,8 +9359,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xEDuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9369,8 +9369,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xECuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9380,7 +9380,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9389,8 +9389,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xC6uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.WRPKRU PrefixType = Mandatory NP @@ -9399,8 +9399,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xEFuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.XEND PrefixType = Mandatory NP @@ -9409,8 +9409,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xD5uy Operands = [| NoOpr |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.XGETBV PrefixType = Mandatory NP @@ -9429,8 +9429,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xE9uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.XSETBV PrefixType = Mandatory NP @@ -9449,8 +9449,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.XTEST PrefixType = Mandatory NP @@ -9459,8 +9459,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xD6uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -9605,8 +9605,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) |] @@ -9633,8 +9633,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 13u Opcode = Opcode.PREFETCHWT1 PrefixType = Mandatory NP @@ -9643,8 +9643,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 14(0x0E) |] @@ -9659,8 +9659,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.MOVSD PrefixType = Mandatory F2 @@ -9669,8 +9669,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9679,8 +9679,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9689,8 +9689,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 @@ -9699,8 +9699,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.MOVUPS PrefixType = Mandatory NP @@ -9709,8 +9709,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -9721,8 +9721,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9731,8 +9731,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 @@ -9741,8 +9741,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.MOVUPS PrefixType = Mandatory NP @@ -9751,8 +9751,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -9763,8 +9763,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.MOVHLPS PrefixType = Mandatory NP @@ -9773,8 +9773,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.MOVLPD PrefixType = Mandatory P66 @@ -9783,8 +9783,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.MOVLPS PrefixType = Mandatory NP @@ -9793,8 +9793,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.MOVSLDUP PrefixType = Mandatory F3 @@ -9803,8 +9803,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -9815,8 +9815,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.MOVLPS PrefixType = Mandatory NP @@ -9825,8 +9825,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -9837,8 +9837,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.UNPCKLPS PrefixType = Mandatory NP @@ -9847,8 +9847,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -9859,8 +9859,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.UNPCKHPS PrefixType = Mandatory NP @@ -9869,8 +9869,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -9881,8 +9881,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.MOVHPS PrefixType = Mandatory NP @@ -9891,8 +9891,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.MOVLHPS PrefixType = Mandatory NP @@ -9901,8 +9901,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.MOVSHDUP PrefixType = Mandatory F3 @@ -9911,8 +9911,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -9923,8 +9923,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 23u Opcode = Opcode.MOVHPS PrefixType = Mandatory NP @@ -9933,8 +9933,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -9945,8 +9945,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.PREFETCHT1 PrefixType = Mandatory NP @@ -9955,8 +9955,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.PREFETCHT2 PrefixType = Mandatory NP @@ -9965,8 +9965,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.PREFETCHNTA PrefixType = Mandatory NP @@ -9975,8 +9975,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9985,8 +9985,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 24u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9995,8 +9995,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } |] [| // index 25(0x19) |] @@ -10009,8 +10009,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.BNDCL PrefixType = Mandatory F3 @@ -10020,7 +10020,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 26u Opcode = Opcode.BNDCU PrefixType = Mandatory F2 @@ -10029,8 +10029,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.BNDCU PrefixType = Mandatory F2 @@ -10040,7 +10040,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 26u Opcode = Opcode.BNDLDX PrefixType = Mandatory NP @@ -10049,8 +10049,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; Unknown "MIB" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10059,8 +10059,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; BM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10070,7 +10070,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; BM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -10081,8 +10081,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 27u Opcode = Opcode.BNDCN PrefixType = Mandatory F2 @@ -10092,7 +10092,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 27u Opcode = Opcode.BNDMK PrefixType = Mandatory F3 @@ -10101,8 +10101,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BndReg; Mem Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 27u Opcode = Opcode.BNDMK PrefixType = Mandatory F3 @@ -10112,7 +10112,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 27u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10121,8 +10121,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| BM Sz64; BndReg |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 27u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10132,7 +10132,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| BM Sz128; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 27u Opcode = Opcode.BNDSTX PrefixType = Mandatory NP @@ -10141,8 +10141,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "MIB"; BndReg |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 28(0x1C) { OpcodeByte = 28u @@ -10153,8 +10153,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Mem Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) |] @@ -10167,8 +10167,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xFBuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.ENDBR64 PrefixType = Mandatory F3 @@ -10177,8 +10177,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xFAuy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.RDSSPD PrefixType = Mandatory F3 @@ -10187,8 +10187,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.R - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.RDSSPQ PrefixType = Mandatory F3 @@ -10198,7 +10198,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -10347,8 +10347,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.MOVAPS PrefixType = Mandatory NP @@ -10357,8 +10357,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -10369,8 +10369,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.MOVAPS PrefixType = Mandatory NP @@ -10379,8 +10379,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -10411,8 +10411,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SD PrefixType = Mandatory F2 @@ -10422,7 +10422,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 @@ -10431,8 +10431,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 @@ -10442,7 +10442,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -10453,8 +10453,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.MOVNTPS PrefixType = Mandatory NP @@ -10463,8 +10463,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -10495,8 +10495,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.CVTTSD2SI PrefixType = Mandatory F2 @@ -10506,7 +10506,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 44u Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 @@ -10515,8 +10515,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 @@ -10526,7 +10526,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -10537,8 +10537,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.CVTPS2PI PrefixType = Mandatory NP @@ -10557,8 +10557,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.CVTSD2SI PrefixType = Mandatory F2 @@ -10568,7 +10568,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 45u Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 @@ -10577,8 +10577,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 @@ -10588,7 +10588,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -10599,8 +10599,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 46u Opcode = Opcode.UCOMISS PrefixType = Mandatory NP @@ -10609,8 +10609,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -10621,8 +10621,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 47u Opcode = Opcode.COMISS PrefixType = Mandatory NP @@ -10631,8 +10631,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 48(0x30) { OpcodeByte = 48u @@ -11715,7 +11715,7 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.VNE + Mode64 = Mode64.None Compat = CompatLegMode.NA } { OpcodeByte = 79u Opcode = Opcode.InvalOP @@ -11757,8 +11757,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.MOVMSKPS PrefixType = Mandatory NP @@ -11767,8 +11767,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -11779,8 +11779,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.SQRTPS PrefixType = Mandatory NP @@ -11789,8 +11789,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.SQRTSD PrefixType = Mandatory F2 @@ -11799,8 +11799,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.SQRTSS PrefixType = Mandatory F3 @@ -11809,8 +11809,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -11821,8 +11821,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.RSQRTSS PrefixType = Mandatory F3 @@ -11831,8 +11831,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -11843,8 +11843,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.RCPSS PrefixType = Mandatory F3 @@ -11853,8 +11853,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -11865,8 +11865,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.ANDPS PrefixType = Mandatory NP @@ -11875,8 +11875,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -11887,8 +11887,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.ANDNPS PrefixType = Mandatory NP @@ -11897,8 +11897,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -11909,8 +11909,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.ORPS PrefixType = Mandatory NP @@ -11919,8 +11919,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -11931,8 +11931,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.XORPS PrefixType = Mandatory NP @@ -11941,8 +11941,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -11953,8 +11953,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.ADDPS PrefixType = Mandatory NP @@ -11963,8 +11963,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.ADDSD PrefixType = Mandatory F2 @@ -11973,8 +11973,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.ADDSS PrefixType = Mandatory F3 @@ -11983,8 +11983,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -11995,8 +11995,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.MULPS PrefixType = Mandatory NP @@ -12005,8 +12005,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.MULSD PrefixType = Mandatory F2 @@ -12015,8 +12015,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.MULSS PrefixType = Mandatory F3 @@ -12025,8 +12025,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -12037,8 +12037,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.CVTPS2PD PrefixType = Mandatory NP @@ -12047,8 +12047,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.CVTSD2SS PrefixType = Mandatory F2 @@ -12057,8 +12057,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.CVTSS2SD PrefixType = Mandatory F3 @@ -12067,8 +12067,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -12079,8 +12079,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.CVTPS2DQ PrefixType = Mandatory P66 @@ -12089,8 +12089,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.CVTTPS2DQ PrefixType = Mandatory F3 @@ -12099,8 +12099,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -12111,8 +12111,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.SUBPS PrefixType = Mandatory NP @@ -12121,8 +12121,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.SUBSD PrefixType = Mandatory F2 @@ -12131,8 +12131,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.SUBSS PrefixType = Mandatory F3 @@ -12141,8 +12141,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -12153,8 +12153,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.MINPS PrefixType = Mandatory NP @@ -12163,8 +12163,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.MINSD PrefixType = Mandatory F2 @@ -12173,8 +12173,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.MINSS PrefixType = Mandatory F3 @@ -12183,8 +12183,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -12195,8 +12195,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.DIVPS PrefixType = Mandatory NP @@ -12205,8 +12205,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.DIVSD PrefixType = Mandatory F2 @@ -12215,8 +12215,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.DIVSS PrefixType = Mandatory F3 @@ -12225,8 +12225,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -12237,8 +12237,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.MAXPS PrefixType = Mandatory NP @@ -12247,8 +12247,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.MAXSD PrefixType = Mandatory F2 @@ -12257,8 +12257,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.MAXSS PrefixType = Mandatory F3 @@ -12267,8 +12267,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -12279,8 +12279,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 96u Opcode = Opcode.PUNPCKLBW PrefixType = Mandatory P66 @@ -12289,8 +12289,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -12301,8 +12301,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 97u Opcode = Opcode.PUNPCKLWD PrefixType = Mandatory P66 @@ -12311,8 +12311,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -12323,8 +12323,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.PUNPCKLDQ PrefixType = Mandatory P66 @@ -12333,8 +12333,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -12345,8 +12345,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.PACKSSWB PrefixType = Mandatory P66 @@ -12355,8 +12355,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -12367,8 +12367,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.PCMPGTB PrefixType = Mandatory P66 @@ -12377,8 +12377,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -12389,8 +12389,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.PCMPGTW PrefixType = Mandatory P66 @@ -12399,8 +12399,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -12411,8 +12411,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.PCMPGTD PrefixType = Mandatory P66 @@ -12421,8 +12421,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -12433,8 +12433,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.PACKUSWB PrefixType = Mandatory P66 @@ -12443,8 +12443,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -12455,8 +12455,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.PUNPCKHBW PrefixType = Mandatory P66 @@ -12465,8 +12465,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -12477,8 +12477,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 105u Opcode = Opcode.PUNPCKHWD PrefixType = Mandatory P66 @@ -12487,8 +12487,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -12499,8 +12499,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 106u Opcode = Opcode.PUNPCKHDQ PrefixType = Mandatory P66 @@ -12509,8 +12509,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -12521,8 +12521,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 107u Opcode = Opcode.PACKSSDW PrefixType = Mandatory P66 @@ -12531,8 +12531,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -12543,8 +12543,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -12555,8 +12555,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -12567,8 +12567,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 110u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -12578,7 +12578,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 110u Opcode = Opcode.MOVD PrefixType = Mandatory P66 @@ -12587,8 +12587,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 110u Opcode = Opcode.MOVQ PrefixType = Mandatory P66 @@ -12598,7 +12598,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -12609,8 +12609,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 @@ -12619,8 +12619,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -12629,8 +12629,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -12641,8 +12641,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.PSHUFHW PrefixType = Mandatory F3 @@ -12651,8 +12651,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.PSHUFLW PrefixType = Mandatory F2 @@ -12661,8 +12661,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.PSHUFW PrefixType = Mandatory NP @@ -12683,8 +12683,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.PSLLW PrefixType = Mandatory P66 @@ -12693,8 +12693,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.PSRAW PrefixType = Mandatory NP @@ -12703,8 +12703,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.PSRAW PrefixType = Mandatory P66 @@ -12713,8 +12713,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.PSRLW PrefixType = Mandatory NP @@ -12723,8 +12723,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.PSRLW PrefixType = Mandatory P66 @@ -12733,8 +12733,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -12745,8 +12745,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.PSLLD PrefixType = Mandatory P66 @@ -12755,8 +12755,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.PSRAD PrefixType = Mandatory NP @@ -12765,8 +12765,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.PSRAD PrefixType = Mandatory P66 @@ -12775,8 +12775,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.PSRLD PrefixType = Mandatory NP @@ -12785,8 +12785,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.PSRLD PrefixType = Mandatory P66 @@ -12795,8 +12795,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -12807,8 +12807,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.PSLLQ PrefixType = Mandatory NP @@ -12817,8 +12817,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 @@ -12827,8 +12827,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.PSRLDQ PrefixType = Mandatory P66 @@ -12837,8 +12837,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.PSRLQ PrefixType = Mandatory NP @@ -12847,8 +12847,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 @@ -12857,8 +12857,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -12869,8 +12869,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 116u Opcode = Opcode.PCMPEQB PrefixType = Mandatory P66 @@ -12879,8 +12879,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -12891,8 +12891,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.PCMPEQW PrefixType = Mandatory P66 @@ -12901,8 +12901,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -12913,8 +12913,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.PCMPEQD PrefixType = Mandatory P66 @@ -12923,9 +12923,9 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } - |] + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } + |] [| // index 119(0x77) { OpcodeByte = 119u Opcode = Opcode.EMMS @@ -12955,8 +12955,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.HADDPS PrefixType = Mandatory F2 @@ -12965,8 +12965,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -12977,8 +12977,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.HSUBPS PrefixType = Mandatory F2 @@ -12987,8 +12987,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -12999,8 +12999,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; MMXReg |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -13010,7 +13010,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; MMXReg |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 126u Opcode = Opcode.MOVD PrefixType = Mandatory P66 @@ -13019,8 +13019,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory P66 @@ -13030,7 +13030,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz128 |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory F3 @@ -13039,8 +13039,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -13051,8 +13051,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 @@ -13061,8 +13061,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -13071,8 +13071,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MM Sz64; MMXReg |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 128(0x80) { OpcodeByte = 128u @@ -14395,8 +14395,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.CLWB PrefixType = Mandatory P66 @@ -14405,8 +14405,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem Sz8 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.FXRSTOR PrefixType = Mandatory NP @@ -14455,8 +14455,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.R - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.INCSSPQ PrefixType = Mandatory F3 @@ -14466,7 +14466,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 174u Opcode = Opcode.LDMXCSR PrefixType = Mandatory NP @@ -14475,8 +14475,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.LFENCE PrefixType = Mandatory NP @@ -14485,8 +14485,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xE8uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.MFENCE PrefixType = Mandatory NP @@ -14495,8 +14495,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xF0uy Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14506,7 +14506,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "R64/M64" |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14515,8 +14515,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 @@ -14525,8 +14525,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 @@ -14535,8 +14535,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 @@ -14545,8 +14545,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 @@ -14555,8 +14555,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.SFENCE PrefixType = Mandatory NP @@ -14575,8 +14575,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -14585,8 +14585,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14595,8 +14595,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "R16/R32/R64" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -14605,8 +14605,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 @@ -14615,8 +14615,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 @@ -14625,8 +14625,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 @@ -14635,8 +14635,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpReg Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 @@ -14645,8 +14645,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpReg Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 174u Opcode = Opcode.XRSTOR PrefixType = Mandatory NP @@ -14655,8 +14655,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14666,7 +14666,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 174u Opcode = Opcode.XSAVE PrefixType = Mandatory NP @@ -14675,8 +14675,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14686,7 +14686,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 174u Opcode = Opcode.XSAVEOPT PrefixType = Mandatory NP @@ -14695,8 +14695,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14705,8 +14705,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -15203,8 +15203,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.TZCNT PrefixType = Mandatory F3 @@ -15213,8 +15213,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.TZCNT PrefixType = Mandatory F3 @@ -15224,7 +15224,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -15265,8 +15265,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 189u Opcode = Opcode.LZCNT PrefixType = Mandatory F3 @@ -15275,8 +15275,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 189u Opcode = Opcode.LZCNT PrefixType = Mandatory F3 @@ -15286,7 +15286,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -15395,8 +15395,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.CMPPS PrefixType = Mandatory NP @@ -15405,8 +15405,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.CMPSD PrefixType = Mandatory F2 @@ -15415,8 +15415,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.CMPSS PrefixType = Mandatory F3 @@ -15425,8 +15425,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) { OpcodeByte = 195u @@ -15437,8 +15437,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 195u Opcode = Opcode.MOVNTI PrefixType = Mandatory NP @@ -15448,7 +15448,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 196(0xC4) { OpcodeByte = 196u @@ -15459,8 +15459,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.PINSRW PrefixType = Mandatory P66 @@ -15469,8 +15469,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -15481,8 +15481,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; MMXReg; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 197u Opcode = Opcode.PEXTRW PrefixType = Mandatory P66 @@ -15491,8 +15491,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -15503,8 +15503,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.SHUFPS PrefixType = Mandatory NP @@ -15513,8 +15513,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -15545,8 +15545,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.R - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -15556,7 +15556,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15565,8 +15565,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz16 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15575,8 +15575,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15585,8 +15585,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15595,8 +15595,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz16 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15605,8 +15605,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15615,8 +15615,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz64 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 199u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -15625,8 +15625,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 199u Opcode = Opcode.XRSTORS PrefixType = Mandatory NP @@ -15635,8 +15635,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.XRSTORS64 PrefixType = Mandatory NP @@ -15646,7 +15646,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 199u Opcode = Opcode.XSAVEC PrefixType = Mandatory NP @@ -15655,8 +15655,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.XSAVEC64 PrefixType = Mandatory NP @@ -15666,7 +15666,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 199u Opcode = Opcode.XSAVES PrefixType = Mandatory NP @@ -15675,8 +15675,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Mem SzUnknown |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.XSAVES64 PrefixType = Mandatory NP @@ -15686,7 +15686,7 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -15873,8 +15873,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 208u Opcode = Opcode.ADDSUBPS PrefixType = Mandatory F2 @@ -15883,8 +15883,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 209(0xD1) { OpcodeByte = 209u @@ -15895,8 +15895,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 209u Opcode = Opcode.PSRLW PrefixType = Mandatory P66 @@ -15905,8 +15905,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -15917,8 +15917,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.PSRLD PrefixType = Mandatory P66 @@ -15927,8 +15927,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -15939,8 +15939,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 @@ -15949,8 +15949,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -15961,8 +15961,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 212u Opcode = Opcode.PADDQ PrefixType = Mandatory P66 @@ -15971,8 +15971,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -15983,8 +15983,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 213u Opcode = Opcode.PMULLW PrefixType = Mandatory P66 @@ -15993,8 +15993,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -16015,8 +16015,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 214u Opcode = Opcode.MOVQ2DQ PrefixType = Mandatory F3 @@ -16025,8 +16025,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; MMXReg |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 215(0xD7) { OpcodeByte = 215u @@ -16037,8 +16037,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; MMXReg |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 215u Opcode = Opcode.PMOVMSKB PrefixType = Mandatory P66 @@ -16047,8 +16047,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 216(0xD8) { OpcodeByte = 216u @@ -16059,8 +16059,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.PSUBUSB PrefixType = Mandatory P66 @@ -16069,8 +16069,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -16081,8 +16081,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 217u Opcode = Opcode.PSUBUSW PrefixType = Mandatory P66 @@ -16091,8 +16091,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -16103,8 +16103,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.PMINUB PrefixType = Mandatory P66 @@ -16113,8 +16113,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -16125,8 +16125,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.PAND PrefixType = Mandatory P66 @@ -16135,8 +16135,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -16147,8 +16147,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.PADDUSB PrefixType = Mandatory P66 @@ -16157,8 +16157,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -16169,8 +16169,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.PADDUSW PrefixType = Mandatory P66 @@ -16179,8 +16179,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -16191,8 +16191,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.PMAXUB PrefixType = Mandatory P66 @@ -16201,8 +16201,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -16213,8 +16213,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.PANDN PrefixType = Mandatory P66 @@ -16223,8 +16223,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -16235,8 +16235,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 224u Opcode = Opcode.PAVGB PrefixType = Mandatory P66 @@ -16245,8 +16245,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -16257,8 +16257,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 225u Opcode = Opcode.PSRAW PrefixType = Mandatory P66 @@ -16267,8 +16267,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -16279,8 +16279,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.PSRAD PrefixType = Mandatory P66 @@ -16289,8 +16289,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -16301,8 +16301,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 227u Opcode = Opcode.PAVGW PrefixType = Mandatory P66 @@ -16311,8 +16311,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -16323,8 +16323,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 228u Opcode = Opcode.PMULHUW PrefixType = Mandatory P66 @@ -16333,8 +16333,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -16345,8 +16345,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 229u Opcode = Opcode.PMULHW PrefixType = Mandatory P66 @@ -16355,8 +16355,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -16367,8 +16367,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.CVTPD2DQ PrefixType = Mandatory F2 @@ -16377,8 +16377,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.CVTTPD2DQ PrefixType = Mandatory P66 @@ -16387,8 +16387,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -16399,8 +16399,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 231u Opcode = Opcode.MOVNTQ PrefixType = Mandatory NP @@ -16421,8 +16421,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 232u Opcode = Opcode.PSUBSB PrefixType = Mandatory P66 @@ -16431,8 +16431,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -16443,8 +16443,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 233u Opcode = Opcode.PSUBSW PrefixType = Mandatory P66 @@ -16453,8 +16453,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -16465,8 +16465,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 234u Opcode = Opcode.PMINSW PrefixType = Mandatory P66 @@ -16475,8 +16475,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -16487,8 +16487,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.POR PrefixType = Mandatory P66 @@ -16497,8 +16497,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -16509,8 +16509,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 236u Opcode = Opcode.PADDSB PrefixType = Mandatory P66 @@ -16519,8 +16519,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -16531,8 +16531,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 237u Opcode = Opcode.PADDSW PrefixType = Mandatory P66 @@ -16541,8 +16541,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -16553,8 +16553,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 238u Opcode = Opcode.PMAXSW PrefixType = Mandatory P66 @@ -16563,8 +16563,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -16575,8 +16575,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.PXOR PrefixType = Mandatory P66 @@ -16585,8 +16585,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 240(0xF0) { OpcodeByte = 240u @@ -16597,8 +16597,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem SzUnknown |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -16609,8 +16609,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.PSLLW PrefixType = Mandatory P66 @@ -16619,8 +16619,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -16631,8 +16631,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 242u Opcode = Opcode.PSLLD PrefixType = Mandatory P66 @@ -16641,8 +16641,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -16653,8 +16653,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 @@ -16663,8 +16663,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -16675,8 +16675,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 244u Opcode = Opcode.PMULUDQ PrefixType = Mandatory P66 @@ -16685,8 +16685,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -16697,8 +16697,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.PMADDWD PrefixType = Mandatory P66 @@ -16707,8 +16707,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -16719,8 +16719,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.PSADBW PrefixType = Mandatory P66 @@ -16729,8 +16729,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -16741,8 +16741,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 247u Opcode = Opcode.MASKMOVQ PrefixType = Mandatory NP @@ -16763,8 +16763,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.PSUBB PrefixType = Mandatory P66 @@ -16773,8 +16773,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -16785,8 +16785,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 249u Opcode = Opcode.PSUBW PrefixType = Mandatory P66 @@ -16795,8 +16795,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -16807,8 +16807,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 250u Opcode = Opcode.PSUBD PrefixType = Mandatory P66 @@ -16817,8 +16817,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -16829,8 +16829,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 251u Opcode = Opcode.PSUBQ PrefixType = Mandatory P66 @@ -16839,8 +16839,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -16851,8 +16851,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 252u Opcode = Opcode.PADDB PrefixType = Mandatory P66 @@ -16861,8 +16861,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -16873,8 +16873,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 253u Opcode = Opcode.PADDW PrefixType = Mandatory P66 @@ -16883,8 +16883,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -16895,8 +16895,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 254u Opcode = Opcode.PADDD PrefixType = Mandatory P66 @@ -16905,8 +16905,8 @@ let (norTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 255(0xFF) { OpcodeByte = 255u @@ -16933,8 +16933,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 0u Opcode = Opcode.PSHUFB PrefixType = Mandatory P66 @@ -16943,8 +16943,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -16955,8 +16955,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.PHADDW PrefixType = Mandatory P66 @@ -16965,8 +16965,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -16977,8 +16977,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 2u Opcode = Opcode.PHADDD PrefixType = Mandatory P66 @@ -16987,8 +16987,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -16999,8 +16999,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.PHADDSW PrefixType = Mandatory P66 @@ -17009,8 +17009,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -17021,8 +17021,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.PMADDUBSW PrefixType = Mandatory P66 @@ -17031,8 +17031,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -17043,8 +17043,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 5u Opcode = Opcode.PHSUBW PrefixType = Mandatory P66 @@ -17053,8 +17053,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -17065,8 +17065,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 6u Opcode = Opcode.PHSUBD PrefixType = Mandatory P66 @@ -17075,8 +17075,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -17087,8 +17087,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 7u Opcode = Opcode.PHSUBSW PrefixType = Mandatory P66 @@ -17097,8 +17097,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -17109,8 +17109,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.PSIGNB PrefixType = Mandatory P66 @@ -17119,8 +17119,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -17131,8 +17131,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 9u Opcode = Opcode.PSIGNW PrefixType = Mandatory P66 @@ -17141,8 +17141,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -17153,8 +17153,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 10u Opcode = Opcode.PSIGND PrefixType = Mandatory P66 @@ -17163,8 +17163,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -17175,8 +17175,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 11u Opcode = Opcode.PMULHRSW PrefixType = Mandatory P66 @@ -17185,8 +17185,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) |] @@ -17205,8 +17205,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) |] @@ -17223,8 +17223,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -17235,8 +17235,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) |] @@ -17249,8 +17249,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) |] @@ -17269,8 +17269,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 28u Opcode = Opcode.PABSB PrefixType = Mandatory P66 @@ -17279,8 +17279,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -17291,8 +17291,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.PABSW PrefixType = Mandatory P66 @@ -17301,8 +17301,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -17313,8 +17313,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.PABSD PrefixType = Mandatory P66 @@ -17323,8 +17323,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) |] @@ -17337,8 +17337,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -17349,8 +17349,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -17361,8 +17361,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -17373,8 +17373,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -17385,8 +17385,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -17397,8 +17397,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 38(0x26) |] @@ -17413,8 +17413,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -17425,8 +17425,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -17437,8 +17437,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -17449,8 +17449,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) |] @@ -17469,8 +17469,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -17481,8 +17481,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -17493,8 +17493,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -17505,8 +17505,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -17517,8 +17517,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -17529,8 +17529,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 54(0x36) |] @@ -17543,8 +17543,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -17555,8 +17555,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -17567,8 +17567,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -17579,8 +17579,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -17591,8 +17591,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -17603,8 +17603,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -17615,8 +17615,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -17627,8 +17627,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -17639,8 +17639,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -17651,8 +17651,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -17663,8 +17663,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) |] @@ -17803,8 +17803,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Mem Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.NE + Compat = CompatLegMode.Valid } { OpcodeByte = 130u Opcode = Opcode.INVPCID PrefixType = Mandatory P66 @@ -17814,7 +17814,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 131(0x83) |] @@ -17963,8 +17963,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 201(0xC9) { OpcodeByte = 201u @@ -17975,8 +17975,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 202(0xCA) { OpcodeByte = 202u @@ -17987,8 +17987,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -17999,8 +17999,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -18011,8 +18011,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -18023,8 +18023,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 206(0xCE) |] @@ -18037,8 +18037,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] @@ -18065,8 +18065,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18075,8 +18075,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18085,8 +18085,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18095,8 +18095,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) |] @@ -18111,8 +18111,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -18123,8 +18123,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18133,8 +18133,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18143,8 +18143,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; FixedReg(Register.EAX, Implicit); Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -18155,8 +18155,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.AESENCLAST PrefixType = Mandatory P66 @@ -18165,8 +18165,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -18177,8 +18177,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18187,8 +18187,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -18199,8 +18199,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.AESDECLAST PrefixType = Mandatory P66 @@ -18209,8 +18209,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) |] @@ -18273,8 +18273,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; Mem Sz16 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 240u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18283,8 +18283,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Mem Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 240u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18294,7 +18294,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -18335,8 +18335,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz16; Reg Sz16 |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18345,8 +18345,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18356,7 +18356,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 242(0xF2) |] @@ -18373,8 +18373,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.WRUSSQ PrefixType = Mandatory P66 @@ -18384,7 +18384,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -18395,8 +18395,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.ADCX PrefixType = Mandatory P66 @@ -18406,7 +18406,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 246u Opcode = Opcode.ADOX PrefixType = Mandatory F3 @@ -18415,8 +18415,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.ADOX PrefixType = Mandatory F3 @@ -18426,7 +18426,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 246u Opcode = Opcode.WRSSD PrefixType = Mandatory NP @@ -18435,8 +18435,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.WRSSQ PrefixType = Mandatory NP @@ -18446,7 +18446,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 247(0xF7) |] @@ -18459,8 +18459,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18469,8 +18469,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -18479,8 +18479,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R16/R32/R64"; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -18491,8 +18491,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 249u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -18502,7 +18502,7 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -18513,8 +18513,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Reg Sz32; Unknown ""; Unknown "" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -18525,8 +18525,8 @@ let (norThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Unknown "R32" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) |] @@ -18565,8 +18565,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -18577,8 +18577,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -18589,8 +18589,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -18601,8 +18601,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -18613,8 +18613,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -18625,8 +18625,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -18637,8 +18637,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -18649,8 +18649,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 15u Opcode = Opcode.PALIGNR PrefixType = Mandatory P66 @@ -18659,8 +18659,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 16(0x10) |] @@ -18679,8 +18679,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -18691,8 +18691,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -18703,8 +18703,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.PEXTRQ PrefixType = Mandatory P66 @@ -18714,7 +18714,7 @@ let (norThree3A: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -18725,8 +18725,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) |] @@ -18753,8 +18753,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -18765,8 +18765,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -18777,8 +18777,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.PINSRQ PrefixType = Mandatory P66 @@ -18787,8 +18787,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 35(0x23) |] @@ -18857,8 +18857,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -18869,8 +18869,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -18881,8 +18881,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) |] @@ -18895,8 +18895,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) |] @@ -18961,8 +18961,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -18973,8 +18973,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -18985,8 +18985,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -18997,8 +18997,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) |] @@ -19217,8 +19217,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) |] @@ -19231,8 +19231,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -19243,8 +19243,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] @@ -19285,8 +19285,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) |] @@ -19329,8 +19329,8 @@ let (norThree3A: InstructionCore[][]) = ModRM = ModRMType.FixedModRM 0xC0uy Operands = [| Imm Sz8; FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 241(0xF1) |] @@ -19407,8 +19407,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -19417,8 +19417,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19427,8 +19427,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19437,8 +19437,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19447,8 +19447,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19457,8 +19457,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19467,8 +19467,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19477,8 +19477,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -19489,8 +19489,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -19499,8 +19499,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19509,8 +19509,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19519,8 +19519,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19529,8 +19529,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19539,8 +19539,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19549,8 +19549,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19559,8 +19559,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -19571,8 +19571,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -19581,8 +19581,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP @@ -19591,8 +19591,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 @@ -19601,8 +19601,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -19611,8 +19611,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -19621,8 +19621,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -19631,8 +19631,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -19643,8 +19643,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -19653,8 +19653,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -19665,8 +19665,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -19675,8 +19675,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -19685,8 +19685,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -19695,8 +19695,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -19707,8 +19707,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -19717,8 +19717,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -19727,8 +19727,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -19737,8 +19737,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -19749,8 +19749,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -19759,8 +19759,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP @@ -19769,8 +19769,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -19779,8 +19779,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -19789,8 +19789,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -19801,8 +19801,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 23u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -19811,8 +19811,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) |] @@ -19855,8 +19855,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -19865,8 +19865,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19875,8 +19875,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19885,8 +19885,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -19897,8 +19897,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -19907,8 +19907,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19917,8 +19917,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19927,8 +19927,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -19939,8 +19939,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 @@ -19949,8 +19949,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -19959,8 +19959,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -19969,8 +19969,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -19981,8 +19981,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -19991,8 +19991,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -20001,8 +20001,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -20011,8 +20011,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -20023,8 +20023,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 @@ -20034,7 +20034,7 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -20043,8 +20043,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -20054,7 +20054,7 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -20065,8 +20065,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 @@ -20076,7 +20076,7 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -20085,8 +20085,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -20096,7 +20096,7 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -20107,8 +20107,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 46u Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP @@ -20117,8 +20117,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -20129,8 +20129,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 47u Opcode = Opcode.VCOMISS PrefixType = Mandatory NP @@ -20139,8 +20139,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 48(0x30) |] @@ -20185,8 +20185,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 65u Opcode = Opcode.KANDB PrefixType = Mandatory P66 @@ -20195,8 +20195,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 65u Opcode = Opcode.KANDQ PrefixType = Mandatory NP @@ -20205,8 +20205,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 65u Opcode = Opcode.KANDD PrefixType = Mandatory P66 @@ -20215,8 +20215,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -20227,8 +20227,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.KANDNB PrefixType = Mandatory P66 @@ -20237,8 +20237,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.KANDNQ PrefixType = Mandatory NP @@ -20247,8 +20247,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.KANDND PrefixType = Mandatory P66 @@ -20257,8 +20257,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) |] @@ -20271,8 +20271,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.KNOTB PrefixType = Mandatory P66 @@ -20281,8 +20281,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.KNOTQ PrefixType = Mandatory NP @@ -20291,8 +20291,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.KNOTD PrefixType = Mandatory P66 @@ -20301,8 +20301,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -20313,8 +20313,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.KORB PrefixType = Mandatory P66 @@ -20323,8 +20323,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.KORQ PrefixType = Mandatory NP @@ -20333,8 +20333,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.KORD PrefixType = Mandatory P66 @@ -20343,8 +20343,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -20355,8 +20355,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.KXNORB PrefixType = Mandatory P66 @@ -20365,8 +20365,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.KXNORQ PrefixType = Mandatory NP @@ -20375,8 +20375,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.KXNORD PrefixType = Mandatory P66 @@ -20385,8 +20385,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -20397,8 +20397,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.KXORB PrefixType = Mandatory P66 @@ -20407,8 +20407,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.KXORQ PrefixType = Mandatory NP @@ -20417,8 +20417,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.KXORD PrefixType = Mandatory P66 @@ -20427,8 +20427,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 72(0x48) |] @@ -20443,8 +20443,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.KADDB PrefixType = Mandatory P66 @@ -20453,8 +20453,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.KADDQ PrefixType = Mandatory NP @@ -20463,8 +20463,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.KADDD PrefixType = Mandatory P66 @@ -20473,8 +20473,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -20485,8 +20485,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.KUNPCKWD PrefixType = Mandatory NP @@ -20495,8 +20495,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.KUNPCKDQ PrefixType = Mandatory NP @@ -20505,8 +20505,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 76(0x4C) |] @@ -20525,8 +20525,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPD PrefixType = Mandatory P66 @@ -20535,8 +20535,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP @@ -20545,8 +20545,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP @@ -20555,8 +20555,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -20567,8 +20567,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -20577,8 +20577,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -20587,8 +20587,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -20597,8 +20597,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 @@ -20607,8 +20607,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 @@ -20617,8 +20617,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -20629,8 +20629,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VRSQRTPS PrefixType = Mandatory NP @@ -20639,8 +20639,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VRSQRTSS PrefixType = Mandatory F3 @@ -20649,8 +20649,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -20661,8 +20661,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VRCPPS PrefixType = Mandatory NP @@ -20671,8 +20671,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VRCPSS PrefixType = Mandatory F3 @@ -20681,8 +20681,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -20693,8 +20693,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -20703,8 +20703,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -20713,8 +20713,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -20723,8 +20723,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -20735,8 +20735,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -20745,8 +20745,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -20755,8 +20755,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -20765,8 +20765,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -20777,8 +20777,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -20787,8 +20787,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -20797,8 +20797,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -20807,8 +20807,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -20819,8 +20819,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -20829,8 +20829,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -20839,8 +20839,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -20849,8 +20849,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -20861,8 +20861,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -20871,8 +20871,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -20881,8 +20881,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -20891,8 +20891,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDSD PrefixType = Mandatory F2 @@ -20901,8 +20901,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDSS PrefixType = Mandatory F3 @@ -20911,8 +20911,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -20923,8 +20923,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -20933,8 +20933,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -20943,8 +20943,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -20953,8 +20953,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULSD PrefixType = Mandatory F2 @@ -20963,8 +20963,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULSS PrefixType = Mandatory F3 @@ -20973,8 +20973,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -20985,8 +20985,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -20995,8 +20995,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -21005,8 +21005,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -21015,8 +21015,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 @@ -21025,8 +21025,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 @@ -21035,8 +21035,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -21047,8 +21047,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -21057,8 +21057,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -21067,8 +21067,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -21077,8 +21077,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -21087,8 +21087,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -21097,8 +21097,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -21109,8 +21109,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -21119,8 +21119,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -21129,8 +21129,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -21139,8 +21139,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 @@ -21149,8 +21149,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 @@ -21159,8 +21159,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -21171,8 +21171,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -21181,8 +21181,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -21191,8 +21191,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -21201,8 +21201,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINSD PrefixType = Mandatory F2 @@ -21211,8 +21211,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINSS PrefixType = Mandatory F3 @@ -21221,8 +21221,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -21233,8 +21233,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -21243,8 +21243,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -21253,8 +21253,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -21263,8 +21263,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 @@ -21273,8 +21273,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 @@ -21283,8 +21283,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -21295,8 +21295,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -21305,8 +21305,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -21315,8 +21315,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -21325,8 +21325,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 @@ -21335,8 +21335,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 @@ -21345,8 +21345,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -21357,8 +21357,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -21367,8 +21367,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -21379,8 +21379,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -21389,8 +21389,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -21401,8 +21401,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -21411,8 +21411,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -21423,8 +21423,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -21433,8 +21433,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -21445,8 +21445,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -21455,8 +21455,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -21467,8 +21467,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -21477,8 +21477,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -21489,8 +21489,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -21499,8 +21499,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -21511,8 +21511,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -21521,8 +21521,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -21533,8 +21533,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -21543,8 +21543,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -21555,8 +21555,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -21565,8 +21565,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -21577,8 +21577,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -21587,8 +21587,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -21599,8 +21599,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -21609,8 +21609,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -21621,8 +21621,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -21631,8 +21631,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -21643,8 +21643,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -21653,8 +21653,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -21665,8 +21665,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 110u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -21675,8 +21675,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "R64/M64" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -21687,8 +21687,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 @@ -21697,8 +21697,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -21707,8 +21707,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -21717,8 +21717,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -21729,8 +21729,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -21739,8 +21739,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -21749,8 +21749,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -21759,8 +21759,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -21769,8 +21769,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -21779,8 +21779,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -21791,8 +21791,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -21801,8 +21801,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -21811,8 +21811,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -21821,8 +21821,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -21831,8 +21831,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -21841,8 +21841,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -21853,8 +21853,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -21863,8 +21863,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -21873,8 +21873,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -21883,8 +21883,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -21893,8 +21893,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -21903,8 +21903,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -21915,8 +21915,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -21925,8 +21925,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -21935,8 +21935,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -21945,8 +21945,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -21955,8 +21955,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -21965,8 +21965,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -21975,8 +21975,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -21985,8 +21985,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -21997,8 +21997,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -22007,8 +22007,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -22019,8 +22019,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -22029,8 +22029,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -22041,8 +22041,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -22051,8 +22051,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -22063,8 +22063,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VZEROUPPER PrefixType = Mandatory NP @@ -22073,8 +22073,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| NoOpr |] OpEn = OpEn.ZO - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 120(0x78) |] @@ -22093,8 +22093,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VHADDPD PrefixType = Mandatory P66 @@ -22103,8 +22103,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 @@ -22113,8 +22113,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 @@ -22123,8 +22123,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -22135,8 +22135,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VHSUBPD PrefixType = Mandatory P66 @@ -22145,8 +22145,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 @@ -22155,8 +22155,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 @@ -22165,8 +22165,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -22177,8 +22177,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -22187,8 +22187,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 @@ -22197,8 +22197,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -22209,8 +22209,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 @@ -22219,8 +22219,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -22229,8 +22229,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -22239,8 +22239,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 128(0x80) |] @@ -22283,8 +22283,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M16" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22293,8 +22293,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M8" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.KMOVQ PrefixType = Mandatory NP @@ -22303,8 +22303,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M64" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.KMOVD PrefixType = Mandatory P66 @@ -22313,8 +22313,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2/M32" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -22325,8 +22325,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz16; Unknown "K1" |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22335,8 +22335,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz8; Unknown "K1" |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.KMOVQ PrefixType = Mandatory NP @@ -22345,8 +22345,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Unknown "K1" |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.KMOVD PrefixType = Mandatory P66 @@ -22355,8 +22355,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Unknown "K1" |] OpEn = OpEn.MR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -22367,8 +22367,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22377,8 +22377,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 @@ -22387,8 +22387,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz64 |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 146u Opcode = Opcode.KMOVD PrefixType = Mandatory F2 @@ -22397,8 +22397,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -22409,8 +22409,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22419,8 +22419,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 @@ -22429,8 +22429,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; Unknown "K1" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } { OpcodeByte = 147u Opcode = Opcode.KMOVD PrefixType = Mandatory F2 @@ -22439,8 +22439,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 148(0x94) |] @@ -22459,8 +22459,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.KORTESTB PrefixType = Mandatory P66 @@ -22469,8 +22469,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.KORTESTQ PrefixType = Mandatory NP @@ -22479,8 +22479,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.KORTESTD PrefixType = Mandatory P66 @@ -22489,8 +22489,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -22501,8 +22501,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 153u Opcode = Opcode.KTESTB PrefixType = Mandatory P66 @@ -22511,8 +22511,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 153u Opcode = Opcode.KTESTQ PrefixType = Mandatory NP @@ -22521,8 +22521,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 153u Opcode = Opcode.KTESTD PrefixType = Mandatory P66 @@ -22531,8 +22531,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 154(0x9A) |] @@ -22583,8 +22583,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -22593,8 +22593,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Mem Sz32 |] OpEn = OpEn.M - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) |] @@ -22643,8 +22643,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -22653,8 +22653,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -22663,8 +22663,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -22673,8 +22673,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 @@ -22683,8 +22683,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 @@ -22693,8 +22693,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) |] @@ -22707,8 +22707,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -22719,8 +22719,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -22731,8 +22731,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -22741,8 +22741,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -22751,8 +22751,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -22761,8 +22761,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 199(0xC7) |] @@ -22791,8 +22791,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPD PrefixType = Mandatory P66 @@ -22801,8 +22801,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 @@ -22811,8 +22811,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 @@ -22821,8 +22821,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 209(0xD1) { OpcodeByte = 209u @@ -22833,8 +22833,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -22843,8 +22843,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -22855,8 +22855,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -22865,8 +22865,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -22877,8 +22877,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -22887,8 +22887,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -22899,8 +22899,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -22909,8 +22909,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -22921,8 +22921,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -22931,8 +22931,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -22943,8 +22943,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 215(0xD7) { OpcodeByte = 215u @@ -22955,8 +22955,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 215u Opcode = Opcode.VPMOVMSKB PrefixType = Mandatory P66 @@ -22965,8 +22965,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 216(0xD8) { OpcodeByte = 216u @@ -22977,8 +22977,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -22987,8 +22987,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -22999,8 +22999,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -23009,8 +23009,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -23021,8 +23021,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -23031,8 +23031,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -23043,8 +23043,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPAND PrefixType = Mandatory P66 @@ -23053,8 +23053,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -23065,8 +23065,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -23075,8 +23075,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -23087,8 +23087,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -23097,8 +23097,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -23109,8 +23109,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -23119,8 +23119,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -23131,8 +23131,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.VPANDN PrefixType = Mandatory P66 @@ -23141,8 +23141,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -23153,8 +23153,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -23163,8 +23163,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -23175,8 +23175,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -23185,8 +23185,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -23197,8 +23197,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -23207,8 +23207,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -23219,8 +23219,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -23229,8 +23229,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -23241,8 +23241,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -23251,8 +23251,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -23263,8 +23263,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -23273,8 +23273,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -23285,8 +23285,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -23295,8 +23295,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -23305,8 +23305,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -23315,8 +23315,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -23325,8 +23325,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -23335,8 +23335,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -23347,8 +23347,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -23357,8 +23357,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -23369,8 +23369,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -23379,8 +23379,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -23391,8 +23391,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -23401,8 +23401,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -23413,8 +23413,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -23423,8 +23423,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -23435,8 +23435,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPOR PrefixType = Mandatory P66 @@ -23445,8 +23445,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -23457,8 +23457,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -23467,8 +23467,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -23479,8 +23479,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -23489,8 +23489,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -23501,8 +23501,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -23511,8 +23511,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -23523,8 +23523,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXOR PrefixType = Mandatory P66 @@ -23533,8 +23533,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 240(0xF0) { OpcodeByte = 240u @@ -23545,8 +23545,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 240u Opcode = Opcode.VLDDQU PrefixType = Mandatory F2 @@ -23555,8 +23555,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -23567,8 +23567,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -23577,8 +23577,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -23589,8 +23589,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -23599,8 +23599,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -23611,8 +23611,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -23621,8 +23621,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -23633,8 +23633,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -23643,8 +23643,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -23655,8 +23655,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -23665,8 +23665,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -23677,8 +23677,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -23687,8 +23687,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -23699,8 +23699,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 248(0xF8) { OpcodeByte = 248u @@ -23711,8 +23711,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -23721,8 +23721,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -23733,8 +23733,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -23743,8 +23743,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -23755,8 +23755,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -23765,8 +23765,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -23777,8 +23777,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -23787,8 +23787,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -23799,8 +23799,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -23809,8 +23809,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -23821,8 +23821,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -23831,8 +23831,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -23843,8 +23843,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -23853,8 +23853,8 @@ let (vexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 255(0xFF) |] @@ -23871,8 +23871,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -23881,8 +23881,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -23893,8 +23893,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.VPHADDW PrefixType = Mandatory P66 @@ -23903,8 +23903,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -23915,8 +23915,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 2u Opcode = Opcode.VPHADDD PrefixType = Mandatory P66 @@ -23925,8 +23925,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -23937,8 +23937,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VPHADDSW PrefixType = Mandatory P66 @@ -23947,8 +23947,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -23959,8 +23959,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -23969,8 +23969,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -23981,8 +23981,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 5u Opcode = Opcode.VPHSUBW PrefixType = Mandatory P66 @@ -23991,8 +23991,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -24003,8 +24003,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 6u Opcode = Opcode.VPHSUBD PrefixType = Mandatory P66 @@ -24013,8 +24013,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -24025,8 +24025,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 7u Opcode = Opcode.VPHSUBSW PrefixType = Mandatory P66 @@ -24035,8 +24035,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -24047,8 +24047,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.VPSIGNB PrefixType = Mandatory P66 @@ -24057,8 +24057,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -24069,8 +24069,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 9u Opcode = Opcode.VPSIGNW PrefixType = Mandatory P66 @@ -24079,8 +24079,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -24091,8 +24091,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 10u Opcode = Opcode.VPSIGND PrefixType = Mandatory P66 @@ -24101,8 +24101,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -24113,8 +24113,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -24123,8 +24123,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -24135,8 +24135,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -24145,8 +24145,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -24157,8 +24157,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -24167,8 +24167,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -24179,8 +24179,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 14u Opcode = Opcode.VTESTPS PrefixType = Mandatory P66 @@ -24189,8 +24189,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -24201,8 +24201,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 15u Opcode = Opcode.VTESTPD PrefixType = Mandatory P66 @@ -24211,8 +24211,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 16(0x10) |] @@ -24229,8 +24229,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -24239,8 +24239,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 20(0x14) |] @@ -24255,8 +24255,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -24267,8 +24267,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 23u Opcode = Opcode.VPTEST PrefixType = Mandatory P66 @@ -24277,8 +24277,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -24289,8 +24289,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24299,8 +24299,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24309,8 +24309,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24319,8 +24319,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -24331,8 +24331,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 @@ -24341,8 +24341,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -24353,8 +24353,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 27(0x1B) |] @@ -24367,8 +24367,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -24377,8 +24377,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -24389,8 +24389,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -24399,8 +24399,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -24411,8 +24411,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -24421,8 +24421,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) |] @@ -24435,8 +24435,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -24445,8 +24445,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -24457,8 +24457,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -24467,8 +24467,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -24479,8 +24479,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -24489,8 +24489,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -24501,8 +24501,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -24511,8 +24511,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -24523,8 +24523,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -24533,8 +24533,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -24545,8 +24545,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -24555,8 +24555,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 38(0x26) |] @@ -24571,8 +24571,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -24581,8 +24581,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -24593,8 +24593,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -24603,8 +24603,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -24615,8 +24615,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -24625,8 +24625,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -24637,8 +24637,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -24647,8 +24647,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -24659,8 +24659,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 @@ -24669,8 +24669,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -24681,8 +24681,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 @@ -24691,8 +24691,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -24703,8 +24703,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 46u Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 @@ -24713,8 +24713,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -24725,8 +24725,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 47u Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 @@ -24735,8 +24735,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 48(0x30) { OpcodeByte = 48u @@ -24747,8 +24747,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -24757,8 +24757,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -24769,8 +24769,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -24779,8 +24779,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -24791,8 +24791,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -24801,8 +24801,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -24813,8 +24813,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -24823,8 +24823,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -24835,8 +24835,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -24845,8 +24845,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -24857,8 +24857,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -24867,8 +24867,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 54(0x36) { OpcodeByte = 54u @@ -24879,8 +24879,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 55(0x37) { OpcodeByte = 55u @@ -24891,8 +24891,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -24901,8 +24901,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -24913,8 +24913,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -24923,8 +24923,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -24935,8 +24935,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -24945,8 +24945,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -24957,8 +24957,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -24967,8 +24967,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -24979,8 +24979,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -24989,8 +24989,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -25001,8 +25001,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -25011,8 +25011,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -25023,8 +25023,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -25033,8 +25033,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -25045,8 +25045,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -25055,8 +25055,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -25067,8 +25067,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -25077,8 +25077,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -25089,8 +25089,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -25099,8 +25099,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -25111,8 +25111,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) |] @@ -25129,8 +25129,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -25139,8 +25139,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -25149,8 +25149,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -25159,8 +25159,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -25171,8 +25171,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -25181,8 +25181,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -25193,8 +25193,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -25203,8 +25203,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -25213,8 +25213,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -25223,8 +25223,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 72(0x48) |] @@ -25238,7 +25238,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25248,7 +25248,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25258,7 +25258,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25268,7 +25268,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 74(0x4A) |] @@ -25282,7 +25282,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25292,7 +25292,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25302,7 +25302,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "SIBMEM"; Unknown "TMM1" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 76(0x4C) |] @@ -25321,8 +25321,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25331,8 +25331,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25341,8 +25341,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25351,8 +25351,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25361,8 +25361,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25371,8 +25371,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -25381,8 +25381,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -25391,8 +25391,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -25403,8 +25403,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25413,8 +25413,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25423,8 +25423,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25433,8 +25433,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25443,8 +25443,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25453,8 +25453,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -25463,8 +25463,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -25473,8 +25473,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -25485,8 +25485,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -25495,8 +25495,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -25507,8 +25507,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -25517,8 +25517,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 84(0x54) |] @@ -25537,8 +25537,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -25547,8 +25547,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -25559,8 +25559,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -25569,8 +25569,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -25581,8 +25581,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 91(0x5B) |] @@ -25596,7 +25596,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 92u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25606,7 +25606,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 93(0x5D) |] @@ -25620,7 +25620,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25630,7 +25630,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25640,7 +25640,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25650,7 +25650,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 95(0x5F) |] @@ -25699,8 +25699,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -25709,8 +25709,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) |] @@ -25731,8 +25731,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -25741,8 +25741,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -25753,8 +25753,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -25763,8 +25763,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "XMM2/M16" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 122(0x7A) |] @@ -25811,8 +25811,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 @@ -25821,8 +25821,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25831,8 +25831,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25841,8 +25841,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 141(0x8D) |] @@ -25855,8 +25855,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 @@ -25865,8 +25865,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25875,8 +25875,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25885,8 +25885,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 143(0x8F) |] @@ -25899,8 +25899,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -25909,8 +25909,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -25919,8 +25919,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -25929,8 +25929,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -25941,8 +25941,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -25951,8 +25951,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -25961,8 +25961,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -25971,8 +25971,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -25983,8 +25983,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -25993,8 +25993,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -26003,8 +26003,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -26013,8 +26013,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -26025,8 +26025,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -26035,8 +26035,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -26045,8 +26045,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -26055,8 +26055,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 148(0x94) |] @@ -26071,8 +26071,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -26081,8 +26081,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -26091,8 +26091,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -26101,8 +26101,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -26113,8 +26113,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -26123,8 +26123,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -26133,8 +26133,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -26143,8 +26143,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -26155,8 +26155,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -26165,8 +26165,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -26175,8 +26175,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -26185,8 +26185,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -26197,8 +26197,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 153u Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 @@ -26207,8 +26207,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -26219,8 +26219,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -26229,8 +26229,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -26239,8 +26239,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -26249,8 +26249,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -26261,8 +26261,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 155u Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 @@ -26271,8 +26271,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -26283,8 +26283,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -26293,8 +26293,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -26303,8 +26303,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -26313,8 +26313,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -26325,8 +26325,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 157u Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 @@ -26335,8 +26335,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -26347,8 +26347,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -26357,8 +26357,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -26367,8 +26367,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -26377,8 +26377,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -26389,8 +26389,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 159u Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 @@ -26399,8 +26399,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) |] @@ -26423,8 +26423,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -26433,8 +26433,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -26443,8 +26443,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -26453,8 +26453,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 167(0xA7) { OpcodeByte = 167u @@ -26465,8 +26465,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -26475,8 +26475,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -26485,8 +26485,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -26495,8 +26495,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 168(0xA8) { OpcodeByte = 168u @@ -26507,8 +26507,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -26517,8 +26517,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -26527,8 +26527,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -26537,8 +26537,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -26549,8 +26549,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 169u Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 @@ -26559,8 +26559,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -26571,8 +26571,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -26581,8 +26581,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -26591,8 +26591,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -26601,8 +26601,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -26613,8 +26613,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 171u Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 @@ -26623,8 +26623,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -26635,8 +26635,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -26645,8 +26645,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -26655,8 +26655,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -26665,8 +26665,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -26677,8 +26677,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 173u Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 @@ -26687,8 +26687,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -26699,8 +26699,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -26709,8 +26709,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -26719,8 +26719,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -26729,8 +26729,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -26741,8 +26741,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 175u Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 @@ -26751,8 +26751,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 176(0xB0) { OpcodeByte = 176u @@ -26763,8 +26763,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26773,8 +26773,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26783,8 +26783,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26793,8 +26793,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26803,8 +26803,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26813,8 +26813,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26823,8 +26823,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26833,8 +26833,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 177(0xB1) { OpcodeByte = 177u @@ -26845,8 +26845,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26855,8 +26855,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26865,8 +26865,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26875,8 +26875,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 178(0xB2) |] @@ -26891,8 +26891,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -26901,8 +26901,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -26913,8 +26913,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -26923,8 +26923,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -26935,8 +26935,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -26945,8 +26945,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -26955,8 +26955,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -26965,8 +26965,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -26977,8 +26977,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -26987,8 +26987,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -26997,8 +26997,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -27007,8 +27007,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -27019,8 +27019,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -27029,8 +27029,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -27039,8 +27039,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -27049,8 +27049,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -27061,8 +27061,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 185u Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 @@ -27071,8 +27071,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -27083,8 +27083,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -27093,8 +27093,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -27103,8 +27103,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -27113,8 +27113,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -27125,8 +27125,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 187u Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 @@ -27135,8 +27135,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -27147,8 +27147,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -27157,8 +27157,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -27167,8 +27167,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -27177,8 +27177,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -27189,8 +27189,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 189u Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 @@ -27199,8 +27199,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -27211,8 +27211,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -27221,8 +27221,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -27231,8 +27231,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -27241,8 +27241,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -27253,8 +27253,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 191u Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 @@ -27263,8 +27263,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 192(0xC0) |] @@ -27297,8 +27297,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -27309,8 +27309,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -27321,8 +27321,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 206(0xCE) |] @@ -27335,8 +27335,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -27345,8 +27345,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] @@ -27361,8 +27361,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27371,8 +27371,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27381,8 +27381,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27391,8 +27391,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27401,8 +27401,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27411,8 +27411,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -27423,8 +27423,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27433,8 +27433,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27443,8 +27443,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27453,8 +27453,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27463,8 +27463,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27473,8 +27473,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 212(0xD4) |] @@ -27497,8 +27497,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27507,8 +27507,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27517,8 +27517,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27527,8 +27527,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27537,8 +27537,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27547,8 +27547,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -27559,8 +27559,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -27571,8 +27571,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -27581,8 +27581,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -27593,8 +27593,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -27603,8 +27603,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -27615,8 +27615,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -27625,8 +27625,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -27637,8 +27637,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -27647,8 +27647,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -27660,7 +27660,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 224u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27670,7 +27670,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -27682,7 +27682,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 225u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27692,7 +27692,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -27704,7 +27704,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 226u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27714,7 +27714,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -27726,7 +27726,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 227u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27736,7 +27736,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -27748,7 +27748,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 228u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27758,7 +27758,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -27770,7 +27770,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 229u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27780,7 +27780,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -27792,7 +27792,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 230u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27802,7 +27802,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -27814,7 +27814,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 231u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27824,7 +27824,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -27836,7 +27836,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 232u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27846,7 +27846,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -27858,7 +27858,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 233u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27868,7 +27868,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -27880,7 +27880,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 234u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27890,7 +27890,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -27902,7 +27902,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 235u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27912,7 +27912,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -27924,7 +27924,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 236u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27934,7 +27934,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -27946,7 +27946,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 237u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27956,7 +27956,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -27968,7 +27968,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 238u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27978,7 +27978,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -27990,7 +27990,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 239u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -28000,7 +28000,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 240(0xF0) |] @@ -28015,8 +28015,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 242u Opcode = Opcode.ANDN PrefixType = Mandatory F3 @@ -28026,7 +28026,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -28037,8 +28037,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.BLSI PrefixType = Mandatory F3 @@ -28048,7 +28048,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 243u Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 @@ -28057,8 +28057,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 @@ -28068,7 +28068,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 243u Opcode = Opcode.BLSR PrefixType = Mandatory F3 @@ -28077,8 +28077,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.BLSR PrefixType = Mandatory F3 @@ -28088,7 +28088,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 244(0xF4) |] @@ -28101,8 +28101,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.BZHI PrefixType = Mandatory F3 @@ -28112,7 +28112,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 245u Opcode = Opcode.PDEP PrefixType = Mandatory F3 @@ -28121,8 +28121,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.PDEP PrefixType = Mandatory F3 @@ -28132,7 +28132,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 245u Opcode = Opcode.PEXT PrefixType = Mandatory F3 @@ -28141,8 +28141,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.PEXT PrefixType = Mandatory F3 @@ -28152,7 +28152,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -28163,8 +28163,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.MULX PrefixType = Mandatory F3 @@ -28174,7 +28174,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -28185,8 +28185,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 247u Opcode = Opcode.BEXTR PrefixType = Mandatory F3 @@ -28196,7 +28196,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 247u Opcode = Opcode.SARX PrefixType = Mandatory F3 @@ -28205,8 +28205,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 247u Opcode = Opcode.SHLX PrefixType = Mandatory P66 @@ -28215,8 +28215,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 247u Opcode = Opcode.SHRX PrefixType = Mandatory F3 @@ -28225,8 +28225,8 @@ let (vexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 247u Opcode = Opcode.SARX PrefixType = Mandatory F3 @@ -28236,7 +28236,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 247u Opcode = Opcode.SHLX PrefixType = Mandatory P66 @@ -28246,7 +28246,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 247u Opcode = Opcode.SHRX PrefixType = Mandatory F3 @@ -28256,7 +28256,7 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 248(0xF8) |] @@ -28287,8 +28287,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -28299,8 +28299,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -28311,8 +28311,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 2u Opcode = Opcode.VPBLENDD PrefixType = Mandatory P66 @@ -28321,8 +28321,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 3(0x03) |] @@ -28335,8 +28335,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -28345,8 +28345,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -28357,8 +28357,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -28367,8 +28367,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -28379,8 +28379,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 7(0x07) |] @@ -28393,8 +28393,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.VROUNDPS PrefixType = Mandatory P66 @@ -28403,8 +28403,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -28415,8 +28415,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 9u Opcode = Opcode.VROUNDPD PrefixType = Mandatory P66 @@ -28425,8 +28425,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -28437,8 +28437,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -28449,8 +28449,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -28461,8 +28461,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 12u Opcode = Opcode.VBLENDPS PrefixType = Mandatory P66 @@ -28471,8 +28471,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -28483,8 +28483,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 13u Opcode = Opcode.VBLENDPD PrefixType = Mandatory P66 @@ -28493,8 +28493,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -28505,8 +28505,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 14u Opcode = Opcode.VPBLENDW PrefixType = Mandatory P66 @@ -28515,8 +28515,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -28527,8 +28527,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -28537,8 +28537,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 16(0x10) |] @@ -28557,8 +28557,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -28569,8 +28569,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -28581,8 +28581,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 @@ -28591,8 +28591,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -28603,8 +28603,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -28615,8 +28615,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -28627,8 +28627,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 26(0x1A) |] @@ -28645,8 +28645,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -28655,8 +28655,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 30(0x1E) |] @@ -28671,8 +28671,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -28683,8 +28683,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -28695,8 +28695,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 @@ -28705,8 +28705,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Invalid } |] [| // index 35(0x23) |] @@ -28743,8 +28743,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.KSHIFTRB PrefixType = Mandatory P66 @@ -28753,8 +28753,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -28765,8 +28765,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.KSHIFTRD PrefixType = Mandatory P66 @@ -28775,8 +28775,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -28787,8 +28787,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.KSHIFTLB PrefixType = Mandatory P66 @@ -28797,8 +28797,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -28809,8 +28809,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.KSHIFTLD PrefixType = Mandatory P66 @@ -28819,8 +28819,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 52(0x34) |] @@ -28839,8 +28839,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -28851,8 +28851,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 58(0x3A) |] @@ -28875,8 +28875,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VDPPS PrefixType = Mandatory P66 @@ -28885,8 +28885,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -28897,8 +28897,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -28909,8 +28909,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VMPSADBW PrefixType = Mandatory P66 @@ -28919,8 +28919,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) |] @@ -28933,8 +28933,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -28943,8 +28943,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) |] @@ -28957,8 +28957,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 71(0x47) |] @@ -28975,8 +28975,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 74u Opcode = Opcode.VBLENDVPS PrefixType = Mandatory P66 @@ -28985,8 +28985,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -28997,8 +28997,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 75u Opcode = Opcode.VBLENDVPD PrefixType = Mandatory P66 @@ -29007,8 +29007,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 76(0x4C) { OpcodeByte = 76u @@ -29019,8 +29019,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VPBLENDVB PrefixType = Mandatory P66 @@ -29029,8 +29029,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 77(0x4D) |] @@ -29079,8 +29079,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -29091,8 +29091,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -29103,8 +29103,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -29115,8 +29115,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) |] @@ -29339,8 +29339,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -29349,8 +29349,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -29361,8 +29361,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -29371,8 +29371,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] @@ -29411,8 +29411,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -29423,8 +29423,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) |] @@ -29467,8 +29467,8 @@ let (vexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 240u Opcode = Opcode.RORX PrefixType = Mandatory F3 @@ -29478,7 +29478,7 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 241(0xF1) |] @@ -29555,8 +29555,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -29565,8 +29565,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29575,8 +29575,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29585,8 +29585,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29595,8 +29595,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29605,8 +29605,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29615,8 +29615,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29625,8 +29625,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29635,8 +29635,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29645,8 +29645,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -29657,8 +29657,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -29667,8 +29667,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M64{K1}"; Reg Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29677,8 +29677,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29687,8 +29687,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M32{K1}"; Reg Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29697,8 +29697,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29707,8 +29707,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29717,8 +29717,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29727,8 +29727,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29737,8 +29737,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29747,8 +29747,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -29759,8 +29759,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -29769,8 +29769,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -29779,8 +29779,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP @@ -29789,8 +29789,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 @@ -29799,8 +29799,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -29809,8 +29809,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29819,8 +29819,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29829,8 +29829,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29839,8 +29839,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -29851,8 +29851,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -29861,8 +29861,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -29873,8 +29873,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -29883,8 +29883,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -29893,8 +29893,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29903,8 +29903,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29913,8 +29913,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29923,8 +29923,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -29935,8 +29935,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -29945,8 +29945,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -29955,8 +29955,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29965,8 +29965,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29975,8 +29975,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29985,8 +29985,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -29997,8 +29997,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -30007,8 +30007,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP @@ -30017,8 +30017,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30027,8 +30027,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30037,8 +30037,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30047,8 +30047,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -30059,8 +30059,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 23u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -30069,8 +30069,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) |] @@ -30113,8 +30113,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30123,8 +30123,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30133,8 +30133,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30143,8 +30143,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30153,8 +30153,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30163,8 +30163,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -30175,8 +30175,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30185,8 +30185,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30195,8 +30195,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30205,8 +30205,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30215,8 +30215,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30225,8 +30225,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -30237,8 +30237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 @@ -30247,8 +30247,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -30257,8 +30257,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -30267,8 +30267,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -30279,8 +30279,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -30289,8 +30289,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -30299,8 +30299,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30309,8 +30309,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30319,8 +30319,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30329,8 +30329,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -30341,8 +30341,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 @@ -30352,7 +30352,7 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -30361,8 +30361,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -30372,7 +30372,7 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -30383,8 +30383,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 @@ -30394,7 +30394,7 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -30403,8 +30403,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -30414,7 +30414,7 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -30425,8 +30425,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 46u Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP @@ -30435,8 +30435,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -30447,8 +30447,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 47u Opcode = Opcode.VCOMISS PrefixType = Mandatory NP @@ -30457,8 +30457,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 48(0x30) |] @@ -30535,8 +30535,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -30545,8 +30545,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -30555,8 +30555,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30565,8 +30565,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30575,8 +30575,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30585,8 +30585,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 @@ -30595,8 +30595,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 @@ -30605,8 +30605,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) |] @@ -30621,8 +30621,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -30631,8 +30631,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -30641,8 +30641,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30651,8 +30651,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30661,8 +30661,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30671,8 +30671,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -30683,8 +30683,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -30693,8 +30693,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -30703,8 +30703,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30713,8 +30713,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30723,8 +30723,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30733,8 +30733,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -30745,8 +30745,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -30755,8 +30755,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -30765,8 +30765,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30775,8 +30775,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30785,8 +30785,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30795,8 +30795,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -30807,8 +30807,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -30817,8 +30817,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -30827,8 +30827,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30837,8 +30837,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30847,8 +30847,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30857,8 +30857,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -30869,8 +30869,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -30879,8 +30879,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -30889,8 +30889,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30899,8 +30899,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30909,8 +30909,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30919,8 +30919,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDSD PrefixType = Mandatory F2 @@ -30929,8 +30929,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VADDSS PrefixType = Mandatory F3 @@ -30939,8 +30939,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -30951,8 +30951,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -30961,8 +30961,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -30971,8 +30971,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -30981,8 +30981,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -30991,8 +30991,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -31001,8 +31001,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULSD PrefixType = Mandatory F2 @@ -31011,8 +31011,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VMULSS PrefixType = Mandatory F3 @@ -31021,8 +31021,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -31033,8 +31033,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -31043,8 +31043,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -31053,8 +31053,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31063,8 +31063,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31073,8 +31073,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31083,8 +31083,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 @@ -31093,8 +31093,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 @@ -31103,8 +31103,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -31115,8 +31115,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -31125,8 +31125,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -31135,8 +31135,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31145,8 +31145,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31155,8 +31155,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31165,8 +31165,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31175,8 +31175,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31185,8 +31185,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31195,8 +31195,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31205,8 +31205,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31215,8 +31215,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31225,8 +31225,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -31237,8 +31237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -31247,8 +31247,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -31257,8 +31257,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31267,8 +31267,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31277,8 +31277,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31287,8 +31287,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 @@ -31297,8 +31297,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 92u Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 @@ -31307,8 +31307,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -31319,8 +31319,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -31329,8 +31329,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -31339,8 +31339,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31349,8 +31349,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31359,8 +31359,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31369,8 +31369,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINSD PrefixType = Mandatory F2 @@ -31379,8 +31379,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 93u Opcode = Opcode.VMINSS PrefixType = Mandatory F3 @@ -31389,8 +31389,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -31401,8 +31401,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -31411,8 +31411,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -31421,8 +31421,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31431,8 +31431,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31441,8 +31441,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31451,8 +31451,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 @@ -31461,8 +31461,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 94u Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 @@ -31471,8 +31471,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -31483,8 +31483,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -31493,8 +31493,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -31503,8 +31503,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31513,8 +31513,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31523,8 +31523,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31533,8 +31533,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 @@ -31543,8 +31543,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 95u Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 @@ -31553,8 +31553,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -31565,8 +31565,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -31575,8 +31575,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -31585,8 +31585,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -31597,8 +31597,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -31607,8 +31607,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -31617,8 +31617,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -31629,8 +31629,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -31639,8 +31639,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -31649,8 +31649,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -31661,8 +31661,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -31671,8 +31671,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -31681,8 +31681,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -31693,8 +31693,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -31703,8 +31703,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -31713,8 +31713,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -31725,8 +31725,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -31735,8 +31735,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -31745,8 +31745,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -31757,8 +31757,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -31767,8 +31767,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -31777,8 +31777,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -31789,8 +31789,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -31799,8 +31799,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -31809,8 +31809,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -31821,8 +31821,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -31831,8 +31831,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -31841,8 +31841,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -31853,8 +31853,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -31863,8 +31863,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -31873,8 +31873,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -31885,8 +31885,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -31895,8 +31895,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -31905,8 +31905,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -31917,8 +31917,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -31927,8 +31927,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -31937,8 +31937,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -31949,8 +31949,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -31959,8 +31959,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -31969,8 +31969,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -31981,8 +31981,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -31991,8 +31991,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -32001,8 +32001,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -32013,8 +32013,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 110u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -32024,7 +32024,7 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "R64/M64" |] OpEn = OpEn.C Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -32035,8 +32035,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -32045,8 +32045,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -32055,8 +32055,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32065,8 +32065,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32075,8 +32075,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32085,8 +32085,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32095,8 +32095,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32105,8 +32105,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32115,8 +32115,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32125,8 +32125,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32135,8 +32135,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32145,8 +32145,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32155,8 +32155,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32165,8 +32165,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32175,8 +32175,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32185,8 +32185,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32195,8 +32195,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32205,8 +32205,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -32217,8 +32217,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -32227,8 +32227,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -32237,8 +32237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32247,8 +32247,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32257,8 +32257,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32267,8 +32267,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32277,8 +32277,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32287,8 +32287,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32297,8 +32297,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -32309,8 +32309,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -32319,8 +32319,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -32329,8 +32329,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32339,8 +32339,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32349,8 +32349,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32359,8 +32359,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32369,8 +32369,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32379,8 +32379,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32389,8 +32389,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -32401,8 +32401,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -32411,8 +32411,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -32421,8 +32421,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32431,8 +32431,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32441,8 +32441,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32451,8 +32451,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32461,8 +32461,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32471,8 +32471,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32481,8 +32481,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32491,8 +32491,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32501,8 +32501,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32511,8 +32511,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32521,8 +32521,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32531,8 +32531,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32541,8 +32541,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32551,8 +32551,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32561,8 +32561,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32571,8 +32571,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32581,8 +32581,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32591,8 +32591,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32601,8 +32601,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32611,8 +32611,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32621,8 +32621,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32631,8 +32631,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -32643,8 +32643,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -32653,8 +32653,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -32663,8 +32663,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32673,8 +32673,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32683,8 +32683,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32693,8 +32693,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32703,8 +32703,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32713,8 +32713,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32723,8 +32723,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32733,8 +32733,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32743,8 +32743,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32753,8 +32753,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.F - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -32765,8 +32765,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -32775,8 +32775,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -32785,8 +32785,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -32797,8 +32797,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -32807,8 +32807,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -32817,8 +32817,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -32829,8 +32829,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -32839,8 +32839,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -32849,8 +32849,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 119(0x77) |] @@ -32863,8 +32863,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP @@ -32873,8 +32873,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP @@ -32883,8 +32883,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32893,8 +32893,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32903,8 +32903,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32913,8 +32913,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32923,8 +32923,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32933,8 +32933,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32943,8 +32943,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32953,8 +32953,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32963,8 +32963,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32973,8 +32973,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 @@ -32983,8 +32983,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 @@ -32993,8 +32993,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 120u Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 @@ -33003,8 +33003,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 @@ -33013,8 +33013,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -33025,8 +33025,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP @@ -33035,8 +33035,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP @@ -33045,8 +33045,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33055,8 +33055,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33065,8 +33065,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33075,8 +33075,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33085,8 +33085,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33095,8 +33095,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33105,8 +33105,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33115,8 +33115,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33125,8 +33125,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33135,8 +33135,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 @@ -33145,8 +33145,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 @@ -33155,8 +33155,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 121u Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 @@ -33165,8 +33165,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 @@ -33175,8 +33175,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 122(0x7A) { OpcodeByte = 122u @@ -33187,8 +33187,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 @@ -33197,8 +33197,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 @@ -33207,8 +33207,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33217,8 +33217,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33227,8 +33227,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33237,8 +33237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33247,8 +33247,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33257,8 +33257,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33267,8 +33267,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33277,8 +33277,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33287,8 +33287,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33297,8 +33297,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33307,8 +33307,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33317,8 +33317,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33327,8 +33327,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33337,8 +33337,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33347,8 +33347,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33357,8 +33357,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 123(0x7B) { OpcodeByte = 123u @@ -33369,8 +33369,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 @@ -33379,8 +33379,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 @@ -33389,8 +33389,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33399,8 +33399,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33409,8 +33409,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33419,8 +33419,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 @@ -33429,8 +33429,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 @@ -33439,8 +33439,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 @@ -33449,8 +33449,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 @@ -33459,8 +33459,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 124(0x7C) |] @@ -33475,8 +33475,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -33485,8 +33485,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 @@ -33495,8 +33495,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -33507,8 +33507,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -33517,8 +33517,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -33527,8 +33527,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33537,8 +33537,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33547,8 +33547,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33557,8 +33557,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33567,8 +33567,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33577,8 +33577,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33587,8 +33587,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33597,8 +33597,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33607,8 +33607,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33617,8 +33617,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33627,8 +33627,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33637,8 +33637,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33647,8 +33647,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33657,8 +33657,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33667,8 +33667,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33677,8 +33677,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 128(0x80) |] @@ -33821,8 +33821,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -33831,8 +33831,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -33841,8 +33841,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33851,8 +33851,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33861,8 +33861,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33871,8 +33871,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 @@ -33881,8 +33881,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 @@ -33891,8 +33891,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) |] @@ -33905,8 +33905,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -33917,8 +33917,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -33929,8 +33929,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -33939,8 +33939,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -33949,8 +33949,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33959,8 +33959,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33969,8 +33969,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33979,8 +33979,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 199(0xC7) |] @@ -34011,8 +34011,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -34021,8 +34021,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -34031,8 +34031,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -34043,8 +34043,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -34053,8 +34053,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -34063,8 +34063,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -34075,8 +34075,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -34085,8 +34085,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -34095,8 +34095,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -34107,8 +34107,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -34117,8 +34117,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -34127,8 +34127,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -34139,8 +34139,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -34149,8 +34149,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -34159,8 +34159,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -34171,8 +34171,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 215(0xD7) |] @@ -34185,8 +34185,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -34195,8 +34195,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -34205,8 +34205,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -34217,8 +34217,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -34227,8 +34227,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -34237,8 +34237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -34249,8 +34249,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -34259,8 +34259,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -34269,8 +34269,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -34281,8 +34281,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPANDD PrefixType = Mandatory P66 @@ -34291,8 +34291,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPANDD PrefixType = Mandatory P66 @@ -34301,8 +34301,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34311,8 +34311,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34321,8 +34321,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34331,8 +34331,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -34343,8 +34343,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -34353,8 +34353,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -34363,8 +34363,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -34375,8 +34375,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -34385,8 +34385,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -34395,8 +34395,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -34407,8 +34407,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -34417,8 +34417,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -34427,8 +34427,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -34439,8 +34439,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34449,8 +34449,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34459,8 +34459,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34469,8 +34469,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34479,8 +34479,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34489,8 +34489,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -34501,8 +34501,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -34511,8 +34511,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -34521,8 +34521,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -34533,8 +34533,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -34543,8 +34543,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -34553,8 +34553,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -34565,8 +34565,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -34575,8 +34575,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -34585,8 +34585,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34595,8 +34595,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34605,8 +34605,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34615,8 +34615,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -34627,8 +34627,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -34637,8 +34637,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -34647,8 +34647,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -34659,8 +34659,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -34669,8 +34669,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -34679,8 +34679,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -34691,8 +34691,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -34701,8 +34701,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -34711,8 +34711,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -34723,8 +34723,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -34733,8 +34733,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -34743,8 +34743,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34753,8 +34753,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34763,8 +34763,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34773,8 +34773,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34783,8 +34783,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34793,8 +34793,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34803,8 +34803,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34813,8 +34813,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34823,8 +34823,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34833,8 +34833,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -34845,8 +34845,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -34855,8 +34855,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -34865,8 +34865,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -34877,8 +34877,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -34887,8 +34887,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -34897,8 +34897,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -34909,8 +34909,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -34919,8 +34919,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -34929,8 +34929,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -34941,8 +34941,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -34951,8 +34951,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -34961,8 +34961,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -34973,8 +34973,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPORD PrefixType = Mandatory P66 @@ -34983,8 +34983,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPORD PrefixType = Mandatory P66 @@ -34993,8 +34993,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35003,8 +35003,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35013,8 +35013,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35023,8 +35023,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -35035,8 +35035,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -35045,8 +35045,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -35055,8 +35055,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -35067,8 +35067,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -35077,8 +35077,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -35087,8 +35087,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -35099,8 +35099,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -35109,8 +35109,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -35119,8 +35119,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -35131,8 +35131,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXORD PrefixType = Mandatory P66 @@ -35141,8 +35141,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXORD PrefixType = Mandatory P66 @@ -35151,8 +35151,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35161,8 +35161,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35171,8 +35171,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35181,8 +35181,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 240(0xF0) |] @@ -35195,8 +35195,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -35205,8 +35205,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -35215,8 +35215,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -35227,8 +35227,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -35237,8 +35237,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -35247,8 +35247,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -35259,8 +35259,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -35269,8 +35269,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -35279,8 +35279,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -35291,8 +35291,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -35301,8 +35301,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -35311,8 +35311,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -35323,8 +35323,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -35333,8 +35333,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -35343,8 +35343,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -35355,8 +35355,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -35365,8 +35365,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -35375,8 +35375,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 247(0xF7) |] @@ -35389,8 +35389,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -35399,8 +35399,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -35409,8 +35409,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -35421,8 +35421,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -35431,8 +35431,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -35441,8 +35441,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -35453,8 +35453,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -35463,8 +35463,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -35473,8 +35473,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -35485,8 +35485,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -35495,8 +35495,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -35505,8 +35505,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -35517,8 +35517,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -35527,8 +35527,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -35537,8 +35537,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -35549,8 +35549,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -35559,8 +35559,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -35569,8 +35569,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -35581,8 +35581,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -35591,8 +35591,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -35601,8 +35601,8 @@ let (evexTwo: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 255(0xFF) |] @@ -35619,8 +35619,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -35629,8 +35629,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -35639,8 +35639,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) |] @@ -35657,8 +35657,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -35667,8 +35667,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -35677,8 +35677,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) |] @@ -35701,8 +35701,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -35711,8 +35711,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -35721,8 +35721,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -35733,8 +35733,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -35743,8 +35743,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -35753,8 +35753,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -35765,8 +35765,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -35775,8 +35775,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -35785,8 +35785,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 14(0x0E) |] @@ -35801,8 +35801,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 @@ -35811,8 +35811,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 @@ -35821,8 +35821,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35831,8 +35831,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35841,8 +35841,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35851,8 +35851,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -35863,8 +35863,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 @@ -35873,8 +35873,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 @@ -35883,8 +35883,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35893,8 +35893,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35903,8 +35903,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35913,8 +35913,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -35925,8 +35925,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 @@ -35935,8 +35935,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 @@ -35945,8 +35945,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35955,8 +35955,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35965,8 +35965,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35975,8 +35975,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -35987,8 +35987,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -35997,8 +35997,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -36007,8 +36007,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36017,8 +36017,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36027,8 +36027,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36037,8 +36037,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -36049,8 +36049,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 @@ -36059,8 +36059,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 @@ -36069,8 +36069,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36079,8 +36079,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36089,8 +36089,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36099,8 +36099,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36109,8 +36109,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36119,8 +36119,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36129,8 +36129,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -36141,8 +36141,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 @@ -36151,8 +36151,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 @@ -36161,8 +36161,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36171,8 +36171,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36181,8 +36181,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36191,8 +36191,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36201,8 +36201,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36211,8 +36211,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36221,8 +36221,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -36233,8 +36233,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 @@ -36243,8 +36243,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 @@ -36253,8 +36253,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 @@ -36263,8 +36263,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 23(0x17) |] @@ -36277,8 +36277,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -36287,8 +36287,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -36297,8 +36297,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -36309,8 +36309,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 @@ -36319,8 +36319,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36329,8 +36329,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36339,8 +36339,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -36351,8 +36351,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36361,8 +36361,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36371,8 +36371,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36381,8 +36381,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -36393,8 +36393,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 27u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36403,8 +36403,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 28(0x1C) { OpcodeByte = 28u @@ -36415,8 +36415,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -36425,8 +36425,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -36435,8 +36435,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -36447,8 +36447,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -36457,8 +36457,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -36467,8 +36467,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -36479,8 +36479,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -36489,8 +36489,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -36499,8 +36499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -36511,8 +36511,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 @@ -36521,8 +36521,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 @@ -36531,8 +36531,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -36543,8 +36543,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -36553,8 +36553,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -36563,8 +36563,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36573,8 +36573,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36583,8 +36583,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36593,8 +36593,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -36605,8 +36605,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -36615,8 +36615,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -36625,8 +36625,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36635,8 +36635,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36645,8 +36645,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36655,8 +36655,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -36667,8 +36667,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -36677,8 +36677,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -36687,8 +36687,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36697,8 +36697,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36707,8 +36707,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36717,8 +36717,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -36729,8 +36729,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -36739,8 +36739,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -36749,8 +36749,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36759,8 +36759,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36769,8 +36769,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36779,8 +36779,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -36791,8 +36791,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -36801,8 +36801,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -36811,8 +36811,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36821,8 +36821,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36831,8 +36831,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36841,8 +36841,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -36853,8 +36853,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -36863,8 +36863,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -36873,8 +36873,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36883,8 +36883,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36893,8 +36893,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36903,8 +36903,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 38(0x26) { OpcodeByte = 38u @@ -36915,8 +36915,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 @@ -36925,8 +36925,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 @@ -36935,8 +36935,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36945,8 +36945,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36955,8 +36955,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36965,8 +36965,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36975,8 +36975,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36985,8 +36985,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36995,8 +36995,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37005,8 +37005,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37015,8 +37015,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37025,8 +37025,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 39(0x27) { OpcodeByte = 39u @@ -37037,8 +37037,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 @@ -37047,8 +37047,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 @@ -37057,8 +37057,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37067,8 +37067,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37077,8 +37077,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37087,8 +37087,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37097,8 +37097,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37107,8 +37107,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37117,8 +37117,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37127,8 +37127,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37137,8 +37137,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37147,8 +37147,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 40(0x28) { OpcodeByte = 40u @@ -37159,8 +37159,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -37169,8 +37169,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -37179,8 +37179,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37189,8 +37189,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37199,8 +37199,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37209,8 +37209,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37219,8 +37219,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37229,8 +37229,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37239,8 +37239,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -37251,8 +37251,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -37261,8 +37261,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -37271,8 +37271,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37281,8 +37281,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37291,8 +37291,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37301,8 +37301,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37311,8 +37311,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37321,8 +37321,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37331,8 +37331,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -37343,8 +37343,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -37353,8 +37353,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -37363,8 +37363,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37373,8 +37373,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37383,8 +37383,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37393,8 +37393,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -37405,8 +37405,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -37415,8 +37415,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -37425,8 +37425,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -37437,8 +37437,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 @@ -37447,8 +37447,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 @@ -37457,8 +37457,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37467,8 +37467,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37477,8 +37477,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37487,8 +37487,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -37499,8 +37499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 45u Opcode = Opcode.VSCALEFSS PrefixType = Mandatory P66 @@ -37509,8 +37509,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 46(0x2E) |] @@ -37525,8 +37525,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -37535,8 +37535,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -37545,8 +37545,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37555,8 +37555,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37565,8 +37565,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37575,8 +37575,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -37587,8 +37587,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -37597,8 +37597,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -37607,8 +37607,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37617,8 +37617,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37627,8 +37627,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37637,8 +37637,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -37649,8 +37649,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -37659,8 +37659,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -37669,8 +37669,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37679,8 +37679,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37689,8 +37689,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37699,8 +37699,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -37711,8 +37711,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -37721,8 +37721,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -37731,8 +37731,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37741,8 +37741,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37751,8 +37751,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37761,8 +37761,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -37773,8 +37773,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -37783,8 +37783,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -37793,8 +37793,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37803,8 +37803,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37813,8 +37813,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37823,8 +37823,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -37835,8 +37835,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -37845,8 +37845,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -37855,8 +37855,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37865,8 +37865,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37875,8 +37875,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37885,8 +37885,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 54(0x36) { OpcodeByte = 54u @@ -37897,8 +37897,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 54u Opcode = Opcode.VPERMD PrefixType = Mandatory P66 @@ -37907,8 +37907,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 54u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -37917,8 +37917,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 54u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -37927,8 +37927,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 55(0x37) { OpcodeByte = 55u @@ -37939,8 +37939,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -37949,8 +37949,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -37959,8 +37959,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -37971,8 +37971,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -37981,8 +37981,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -37991,8 +37991,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38001,8 +38001,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38011,8 +38011,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38021,8 +38021,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38031,8 +38031,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38041,8 +38041,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38051,8 +38051,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -38063,8 +38063,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -38073,8 +38073,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -38083,8 +38083,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38093,8 +38093,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38103,8 +38103,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38113,8 +38113,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38123,8 +38123,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38133,8 +38133,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38143,8 +38143,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38153,8 +38153,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38163,8 +38163,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38173,8 +38173,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -38185,8 +38185,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -38195,8 +38195,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -38205,8 +38205,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38215,8 +38215,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38225,8 +38225,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38235,8 +38235,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -38247,8 +38247,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -38257,8 +38257,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -38267,8 +38267,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38277,8 +38277,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38287,8 +38287,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38297,8 +38297,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -38309,8 +38309,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -38319,8 +38319,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -38329,8 +38329,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -38341,8 +38341,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -38351,8 +38351,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -38361,8 +38361,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38371,8 +38371,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38381,8 +38381,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38391,8 +38391,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -38403,8 +38403,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -38413,8 +38413,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -38423,8 +38423,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -38435,8 +38435,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -38445,8 +38445,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -38455,8 +38455,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38465,8 +38465,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38475,8 +38475,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38485,8 +38485,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -38497,8 +38497,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -38507,8 +38507,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -38517,8 +38517,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38527,8 +38527,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38537,8 +38537,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38547,8 +38547,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 65(0x41) |] @@ -38561,8 +38561,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 @@ -38571,8 +38571,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 @@ -38581,8 +38581,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38591,8 +38591,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38601,8 +38601,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38611,8 +38611,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -38623,8 +38623,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.VGETEXPSS PrefixType = Mandatory P66 @@ -38633,8 +38633,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -38645,8 +38645,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 @@ -38655,8 +38655,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 @@ -38665,8 +38665,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38675,8 +38675,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38685,8 +38685,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38695,8 +38695,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -38707,8 +38707,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -38717,8 +38717,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -38727,8 +38727,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38737,8 +38737,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38747,8 +38747,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38757,8 +38757,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -38769,8 +38769,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -38779,8 +38779,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -38789,8 +38789,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38799,8 +38799,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38809,8 +38809,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38819,8 +38819,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -38831,8 +38831,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -38841,8 +38841,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -38851,8 +38851,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38861,8 +38861,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38871,8 +38871,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38881,8 +38881,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 72(0x48) |] @@ -38901,8 +38901,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 @@ -38911,8 +38911,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 @@ -38921,8 +38921,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38931,8 +38931,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38941,8 +38941,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38951,8 +38951,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 77(0x4D) { OpcodeByte = 77u @@ -38963,8 +38963,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 77u Opcode = Opcode.VRCP14SS PrefixType = Mandatory P66 @@ -38973,8 +38973,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 78(0x4E) { OpcodeByte = 78u @@ -38985,8 +38985,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 @@ -38995,8 +38995,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 @@ -39005,8 +39005,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39015,8 +39015,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39025,8 +39025,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39035,8 +39035,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 79(0x4F) { OpcodeByte = 79u @@ -39047,8 +39047,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 79u Opcode = Opcode.VRSQRT14SS PrefixType = Mandatory P66 @@ -39057,8 +39057,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 80(0x50) { OpcodeByte = 80u @@ -39069,8 +39069,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -39079,8 +39079,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -39089,8 +39089,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -39101,8 +39101,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -39111,8 +39111,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -39121,8 +39121,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -39133,8 +39133,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 @@ -39143,8 +39143,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 @@ -39153,8 +39153,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39163,8 +39163,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39173,8 +39173,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39183,8 +39183,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 82u Opcode = Opcode.VP4DPWSSD PrefixType = Mandatory F3 @@ -39193,8 +39193,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -39205,8 +39205,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -39215,8 +39215,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -39225,8 +39225,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 83u Opcode = Opcode.VP4DPWSSDS PrefixType = Mandatory F3 @@ -39235,8 +39235,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -39247,8 +39247,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 @@ -39257,8 +39257,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 @@ -39267,8 +39267,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39277,8 +39277,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39287,8 +39287,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39297,8 +39297,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -39309,8 +39309,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 @@ -39319,8 +39319,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 @@ -39329,8 +39329,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39339,8 +39339,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39349,8 +39349,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39359,8 +39359,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 86(0x56) |] @@ -39375,8 +39375,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -39385,8 +39385,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -39395,8 +39395,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -39407,8 +39407,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -39417,8 +39417,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -39427,8 +39427,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39437,8 +39437,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39447,8 +39447,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39457,8 +39457,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -39469,8 +39469,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI32X4 PrefixType = Mandatory P66 @@ -39479,8 +39479,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 @@ -39489,8 +39489,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 @@ -39499,8 +39499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -39511,8 +39511,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.E - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 91u Opcode = Opcode.VBROADCASTI64X4 PrefixType = Mandatory P66 @@ -39521,8 +39521,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 92(0x5C) |] @@ -39545,8 +39545,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39555,8 +39555,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39565,8 +39565,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39575,8 +39575,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39585,8 +39585,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39595,8 +39595,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39605,8 +39605,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39615,8 +39615,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39625,8 +39625,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39635,8 +39635,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39645,8 +39645,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39655,8 +39655,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -39667,8 +39667,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39677,8 +39677,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39687,8 +39687,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39697,8 +39697,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39707,8 +39707,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39717,8 +39717,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39727,8 +39727,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39737,8 +39737,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39747,8 +39747,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39757,8 +39757,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39767,8 +39767,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39777,8 +39777,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -39789,8 +39789,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 @@ -39799,8 +39799,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 @@ -39809,8 +39809,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39819,8 +39819,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39829,8 +39829,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39839,8 +39839,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -39851,8 +39851,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 @@ -39861,8 +39861,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 @@ -39871,8 +39871,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39881,8 +39881,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39891,8 +39891,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39901,8 +39901,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -39913,8 +39913,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 @@ -39923,8 +39923,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 @@ -39933,8 +39933,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39943,8 +39943,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39953,8 +39953,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39963,8 +39963,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 103(0x67) |] @@ -39977,8 +39977,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 @@ -39987,8 +39987,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 @@ -39997,8 +39997,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40007,8 +40007,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40017,8 +40017,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40027,8 +40027,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 105(0x69) |] @@ -40053,8 +40053,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 @@ -40063,8 +40063,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 @@ -40073,8 +40073,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -40085,8 +40085,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 @@ -40095,8 +40095,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 @@ -40105,8 +40105,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40115,8 +40115,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40125,8 +40125,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40135,8 +40135,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -40147,8 +40147,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 @@ -40157,8 +40157,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 @@ -40167,8 +40167,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40177,8 +40177,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40187,8 +40187,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40197,8 +40197,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40207,8 +40207,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40217,8 +40217,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40227,8 +40227,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -40239,8 +40239,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 @@ -40249,8 +40249,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 @@ -40259,8 +40259,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40269,8 +40269,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40279,8 +40279,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40289,8 +40289,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) |] @@ -40303,8 +40303,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 @@ -40313,8 +40313,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 @@ -40323,8 +40323,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40333,8 +40333,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40343,8 +40343,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40353,8 +40353,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -40365,8 +40365,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 @@ -40375,8 +40375,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 @@ -40385,8 +40385,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40395,8 +40395,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40405,8 +40405,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40415,8 +40415,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -40427,8 +40427,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 @@ -40437,8 +40437,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 @@ -40447,8 +40447,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40457,8 +40457,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40467,8 +40467,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40477,8 +40477,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 120(0x78) { OpcodeByte = 120u @@ -40489,8 +40489,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40499,8 +40499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40509,8 +40509,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz8) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -40521,8 +40521,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40531,8 +40531,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "XMM2/M16" |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40541,8 +40541,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "XMM2/M16" |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 122(0x7A) { OpcodeByte = 122u @@ -40553,8 +40553,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40563,8 +40563,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 122u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40573,8 +40573,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 123(0x7B) { OpcodeByte = 123u @@ -40585,8 +40585,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40595,8 +40595,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 123u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40605,8 +40605,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 124(0x7C) { OpcodeByte = 124u @@ -40617,8 +40617,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -40627,8 +40627,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -40637,8 +40637,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40647,8 +40647,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40657,8 +40657,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40667,8 +40667,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz64 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.NE } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -40679,8 +40679,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 @@ -40689,8 +40689,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 @@ -40699,8 +40699,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40709,8 +40709,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40719,8 +40719,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40729,8 +40729,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -40741,8 +40741,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 @@ -40751,8 +40751,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 @@ -40761,8 +40761,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40771,8 +40771,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40781,8 +40781,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40791,8 +40791,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -40803,8 +40803,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 @@ -40813,8 +40813,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 @@ -40823,8 +40823,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40833,8 +40833,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40843,8 +40843,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40853,8 +40853,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 128(0x80) |] @@ -40871,8 +40871,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 131u Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 @@ -40881,8 +40881,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 131u Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 @@ -40891,8 +40891,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 132(0x84) |] @@ -40911,8 +40911,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 @@ -40921,8 +40921,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 @@ -40931,8 +40931,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40941,8 +40941,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40951,8 +40951,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40961,8 +40961,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 137(0x89) { OpcodeByte = 137u @@ -40973,8 +40973,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 @@ -40983,8 +40983,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 @@ -40993,8 +40993,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41003,8 +41003,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41013,8 +41013,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41023,8 +41023,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 138(0x8A) { OpcodeByte = 138u @@ -41035,8 +41035,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 @@ -41045,8 +41045,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 @@ -41055,8 +41055,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41065,8 +41065,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41075,8 +41075,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41085,8 +41085,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 139(0x8B) { OpcodeByte = 139u @@ -41097,8 +41097,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 @@ -41107,8 +41107,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 @@ -41117,8 +41117,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41127,8 +41127,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41137,8 +41137,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41147,8 +41147,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 140(0x8C) |] @@ -41161,8 +41161,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 141u Opcode = Opcode.VPERMB PrefixType = Mandatory P66 @@ -41171,8 +41171,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 141u Opcode = Opcode.VPERMB PrefixType = Mandatory P66 @@ -41181,8 +41181,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41191,8 +41191,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41201,8 +41201,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41211,8 +41211,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 142(0x8E) |] @@ -41225,8 +41225,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 143u Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 @@ -41235,8 +41235,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 143u Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 @@ -41245,8 +41245,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 144(0x90) { OpcodeByte = 144u @@ -41257,8 +41257,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -41267,8 +41267,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -41277,8 +41277,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41287,8 +41287,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41297,8 +41297,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41307,8 +41307,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -41319,8 +41319,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -41329,8 +41329,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -41339,8 +41339,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41349,8 +41349,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41359,8 +41359,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41369,8 +41369,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -41381,8 +41381,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -41391,8 +41391,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -41401,8 +41401,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41411,8 +41411,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41421,8 +41421,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41431,8 +41431,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -41443,8 +41443,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -41453,8 +41453,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -41463,8 +41463,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41473,8 +41473,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41483,8 +41483,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41493,8 +41493,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 148(0x94) |] @@ -41509,8 +41509,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -41519,8 +41519,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -41529,8 +41529,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41539,8 +41539,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41549,8 +41549,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41559,8 +41559,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -41571,8 +41571,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -41581,8 +41581,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -41591,8 +41591,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41601,8 +41601,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41611,8 +41611,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41621,8 +41621,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -41633,8 +41633,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -41643,8 +41643,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -41653,8 +41653,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41663,8 +41663,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41673,8 +41673,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41683,8 +41683,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -41695,8 +41695,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 153u Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 @@ -41705,8 +41705,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -41717,8 +41717,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -41727,8 +41727,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -41737,8 +41737,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41747,8 +41747,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41757,8 +41757,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41767,8 +41767,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 154u Opcode = Opcode.V4FMADDPS PrefixType = Mandatory F3 @@ -41777,8 +41777,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -41789,8 +41789,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 155u Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 @@ -41799,8 +41799,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 155u Opcode = Opcode.V4FMADDSS PrefixType = Mandatory F3 @@ -41809,8 +41809,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -41821,8 +41821,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -41831,8 +41831,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -41841,8 +41841,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41851,8 +41851,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41861,8 +41861,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41871,8 +41871,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -41883,8 +41883,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 157u Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 @@ -41893,8 +41893,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -41905,8 +41905,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -41915,8 +41915,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -41925,8 +41925,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41935,8 +41935,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41945,8 +41945,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41955,8 +41955,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -41967,8 +41967,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 159u Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 @@ -41977,8 +41977,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 160(0xA0) { OpcodeByte = 160u @@ -41989,8 +41989,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 @@ -41999,8 +41999,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 @@ -42009,8 +42009,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42019,8 +42019,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42029,8 +42029,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42039,8 +42039,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 161(0xA1) { OpcodeByte = 161u @@ -42051,8 +42051,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 @@ -42061,8 +42061,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 @@ -42071,8 +42071,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42081,8 +42081,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42091,8 +42091,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42101,8 +42101,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 162(0xA2) { OpcodeByte = 162u @@ -42113,8 +42113,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 @@ -42123,8 +42123,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 @@ -42133,8 +42133,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42143,8 +42143,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42153,8 +42153,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42163,8 +42163,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 163(0xA3) { OpcodeByte = 163u @@ -42175,8 +42175,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 @@ -42185,8 +42185,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 @@ -42195,8 +42195,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42205,8 +42205,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42215,8 +42215,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42225,8 +42225,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 164(0xA4) |] @@ -42241,8 +42241,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -42251,8 +42251,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -42261,8 +42261,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42271,8 +42271,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42281,8 +42281,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42291,8 +42291,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 167(0xA7) { OpcodeByte = 167u @@ -42303,8 +42303,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -42313,8 +42313,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -42323,8 +42323,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42333,8 +42333,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42343,8 +42343,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42353,8 +42353,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 168(0xA8) { OpcodeByte = 168u @@ -42365,8 +42365,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -42375,8 +42375,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -42385,8 +42385,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42395,8 +42395,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42405,8 +42405,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42415,8 +42415,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -42427,8 +42427,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 169u Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 @@ -42437,8 +42437,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -42449,8 +42449,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -42459,8 +42459,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -42469,8 +42469,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42479,8 +42479,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42489,8 +42489,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42499,8 +42499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 170u Opcode = Opcode.V4FNMADDPS PrefixType = Mandatory F3 @@ -42509,8 +42509,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -42521,8 +42521,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 171u Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 @@ -42531,8 +42531,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 171u Opcode = Opcode.V4FNMADDSS PrefixType = Mandatory F3 @@ -42541,8 +42541,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -42553,8 +42553,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -42563,8 +42563,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -42573,8 +42573,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42583,8 +42583,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42593,8 +42593,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42603,8 +42603,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -42615,8 +42615,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 173u Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 @@ -42625,8 +42625,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -42637,8 +42637,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -42647,8 +42647,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -42657,8 +42657,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42667,8 +42667,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42677,8 +42677,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42687,8 +42687,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -42699,8 +42699,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 175u Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 @@ -42709,8 +42709,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 176(0xB0) |] @@ -42729,8 +42729,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -42739,8 +42739,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -42749,8 +42749,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -42761,8 +42761,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -42771,8 +42771,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -42781,8 +42781,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -42793,8 +42793,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -42803,8 +42803,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -42813,8 +42813,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42823,8 +42823,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42833,8 +42833,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42843,8 +42843,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -42855,8 +42855,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -42865,8 +42865,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -42875,8 +42875,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42885,8 +42885,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42895,8 +42895,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42905,8 +42905,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -42917,8 +42917,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -42927,8 +42927,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -42937,8 +42937,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42947,8 +42947,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42957,8 +42957,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42967,8 +42967,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -42979,8 +42979,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 185u Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 @@ -42989,8 +42989,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -43001,8 +43001,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -43011,8 +43011,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -43021,8 +43021,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43031,8 +43031,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43041,8 +43041,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43051,8 +43051,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -43063,8 +43063,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 187u Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 @@ -43073,8 +43073,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -43085,8 +43085,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -43095,8 +43095,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -43105,8 +43105,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43115,8 +43115,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43125,8 +43125,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43135,8 +43135,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -43147,8 +43147,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 189u Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 @@ -43157,8 +43157,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -43169,8 +43169,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -43179,8 +43179,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -43189,8 +43189,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43199,8 +43199,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43209,8 +43209,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43219,8 +43219,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -43231,8 +43231,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 191u Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 @@ -43241,8 +43241,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 192(0xC0) |] @@ -43261,8 +43261,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 @@ -43271,8 +43271,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 @@ -43281,8 +43281,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43291,8 +43291,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43301,8 +43301,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43311,8 +43311,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 197(0xC5) |] @@ -43325,8 +43325,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF0DPD PrefixType = Mandatory P66 @@ -43335,8 +43335,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF1DPS PrefixType = Mandatory P66 @@ -43345,8 +43345,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF1DPD PrefixType = Mandatory P66 @@ -43355,8 +43355,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF0DPS PrefixType = Mandatory P66 @@ -43365,8 +43365,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF0DPD PrefixType = Mandatory P66 @@ -43375,8 +43375,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF1DPS PrefixType = Mandatory P66 @@ -43385,8 +43385,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF1DPD PrefixType = Mandatory P66 @@ -43395,8 +43395,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -43407,8 +43407,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF0QPD PrefixType = Mandatory P66 @@ -43417,8 +43417,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF1QPS PrefixType = Mandatory P66 @@ -43427,8 +43427,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF1QPD PrefixType = Mandatory P66 @@ -43437,8 +43437,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF0QPS PrefixType = Mandatory P66 @@ -43447,8 +43447,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF0QPD PrefixType = Mandatory P66 @@ -43457,8 +43457,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF1QPS PrefixType = Mandatory P66 @@ -43467,8 +43467,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF1QPD PrefixType = Mandatory P66 @@ -43477,8 +43477,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -43489,8 +43489,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 200u Opcode = Opcode.VEXP2PS PrefixType = Mandatory P66 @@ -43499,8 +43499,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 201(0xC9) |] @@ -43513,8 +43513,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 202u Opcode = Opcode.VRCP28PS PrefixType = Mandatory P66 @@ -43523,8 +43523,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -43535,8 +43535,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 203u Opcode = Opcode.VRCP28SS PrefixType = Mandatory P66 @@ -43545,8 +43545,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -43557,8 +43557,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 204u Opcode = Opcode.VRSQRT28PS PrefixType = Mandatory P66 @@ -43567,8 +43567,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -43579,8 +43579,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 205u Opcode = Opcode.VRSQRT28SS PrefixType = Mandatory P66 @@ -43589,8 +43589,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 206(0xCE) |] @@ -43603,8 +43603,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -43613,8 +43613,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -43623,8 +43623,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] @@ -43659,8 +43659,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -43669,8 +43669,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -43679,8 +43679,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -43691,8 +43691,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -43701,8 +43701,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -43711,8 +43711,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -43723,8 +43723,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -43733,8 +43733,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -43743,8 +43743,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -43755,8 +43755,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -43765,8 +43765,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -43775,8 +43775,8 @@ let (evexThree38: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 224(0xE0) |] @@ -43855,8 +43855,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 0u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -43865,8 +43865,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -43877,8 +43877,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 1u Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 @@ -43887,8 +43887,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 2(0x02) |] @@ -43901,8 +43901,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43911,8 +43911,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VALIGND PrefixType = Mandatory P66 @@ -43921,8 +43921,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43931,8 +43931,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VALIGND PrefixType = Mandatory P66 @@ -43941,8 +43941,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43951,8 +43951,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -43963,8 +43963,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -43973,8 +43973,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -43983,8 +43983,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -43995,8 +43995,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -44005,8 +44005,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -44015,8 +44015,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 6(0x06) |] @@ -44031,8 +44031,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44041,8 +44041,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44051,8 +44051,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44061,8 +44061,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44071,8 +44071,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44081,8 +44081,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -44093,8 +44093,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 9u Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 @@ -44103,8 +44103,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 9u Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 @@ -44113,8 +44113,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -44125,8 +44125,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 10u Opcode = Opcode.VRNDSCALESS PrefixType = Mandatory P66 @@ -44135,8 +44135,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -44147,8 +44147,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 12(0x0C) |] @@ -44165,8 +44165,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -44175,8 +44175,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -44185,8 +44185,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 16(0x10) |] @@ -44205,8 +44205,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -44217,8 +44217,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -44229,8 +44229,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 22u Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 @@ -44240,7 +44240,7 @@ let (evexThree3A: InstructionCore[][]) = Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -44251,8 +44251,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -44263,8 +44263,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VINSERTF32X4 PrefixType = Mandatory P66 @@ -44273,8 +44273,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 @@ -44283,8 +44283,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 24u Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 @@ -44293,8 +44293,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -44305,8 +44305,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF32X4 PrefixType = Mandatory P66 @@ -44315,8 +44315,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 @@ -44325,8 +44325,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 @@ -44335,8 +44335,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -44347,8 +44347,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 26u Opcode = Opcode.VINSERTF64X4 PrefixType = Mandatory P66 @@ -44357,8 +44357,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -44369,8 +44369,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 27u Opcode = Opcode.VEXTRACTF64X4 PrefixType = Mandatory P66 @@ -44379,8 +44379,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 28(0x1C) |] @@ -44393,8 +44393,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -44403,8 +44403,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -44413,8 +44413,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Unknown "ZMM2{SAE}"; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -44425,8 +44425,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 @@ -44435,8 +44435,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 @@ -44445,8 +44445,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44455,8 +44455,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44465,8 +44465,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44475,8 +44475,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -44487,8 +44487,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 @@ -44497,8 +44497,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 @@ -44507,8 +44507,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44517,8 +44517,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44527,8 +44527,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44537,8 +44537,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -44549,8 +44549,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -44561,8 +44561,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -44573,8 +44573,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 34u Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 @@ -44584,7 +44584,7 @@ let (evexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] OpEn = OpEn.C Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.NE } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -44595,8 +44595,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VSHUFF32X4 PrefixType = Mandatory P66 @@ -44605,8 +44605,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 @@ -44615,8 +44615,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 35u Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 @@ -44625,8 +44625,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 36(0x24) |] @@ -44639,8 +44639,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 @@ -44649,8 +44649,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 @@ -44659,8 +44659,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44669,8 +44669,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44679,8 +44679,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44689,8 +44689,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 38(0x26) { OpcodeByte = 38u @@ -44701,8 +44701,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 @@ -44711,8 +44711,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 @@ -44721,8 +44721,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44731,8 +44731,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44741,8 +44741,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44751,8 +44751,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44761,8 +44761,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44771,8 +44771,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44781,8 +44781,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 39(0x27) { OpcodeByte = 39u @@ -44793,8 +44793,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44803,8 +44803,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 39u Opcode = Opcode.VGETMANTSS PrefixType = Mandatory P66 @@ -44813,8 +44813,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 40(0x28) |] @@ -44857,8 +44857,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -44867,8 +44867,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 @@ -44877,8 +44877,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 56u Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 @@ -44887,8 +44887,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -44899,8 +44899,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI32X4 PrefixType = Mandatory P66 @@ -44909,8 +44909,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 @@ -44919,8 +44919,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 @@ -44929,8 +44929,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -44941,8 +44941,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 58u Opcode = Opcode.VINSERTI64X4 PrefixType = Mandatory P66 @@ -44951,8 +44951,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -44963,8 +44963,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.D - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 59u Opcode = Opcode.VEXTRACTI64X4 PrefixType = Mandatory P66 @@ -44973,8 +44973,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 60(0x3C) |] @@ -44989,8 +44989,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 @@ -44999,8 +44999,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 @@ -45009,8 +45009,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45019,8 +45019,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45029,8 +45029,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45039,8 +45039,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -45051,8 +45051,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 @@ -45061,8 +45061,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 @@ -45071,8 +45071,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45081,8 +45081,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45091,8 +45091,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45101,8 +45101,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 64(0x40) |] @@ -45117,8 +45117,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 @@ -45127,8 +45127,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 66u Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 @@ -45137,8 +45137,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -45149,8 +45149,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.VSHUFI32X4 PrefixType = Mandatory P66 @@ -45159,8 +45159,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 @@ -45169,8 +45169,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 67u Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 @@ -45179,8 +45179,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -45191,8 +45191,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -45201,8 +45201,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -45211,8 +45211,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 69(0x45) |] @@ -45245,8 +45245,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 @@ -45255,8 +45255,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 @@ -45265,8 +45265,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45275,8 +45275,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45285,8 +45285,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45295,8 +45295,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -45307,8 +45307,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 81u Opcode = Opcode.VRANGESS PrefixType = Mandatory P66 @@ -45317,8 +45317,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 82(0x52) |] @@ -45333,8 +45333,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 @@ -45343,8 +45343,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 @@ -45353,8 +45353,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45363,8 +45363,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45373,8 +45373,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45383,8 +45383,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -45395,8 +45395,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 85u Opcode = Opcode.VFIXUPIMMSS PrefixType = Mandatory P66 @@ -45405,8 +45405,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -45417,8 +45417,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 @@ -45427,8 +45427,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 @@ -45437,8 +45437,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45447,8 +45447,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45457,8 +45457,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45467,8 +45467,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45477,8 +45477,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45487,8 +45487,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45497,8 +45497,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -45509,8 +45509,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45519,8 +45519,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 87u Opcode = Opcode.VREDUCESS PrefixType = Mandatory P66 @@ -45529,8 +45529,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 88(0x58) |] @@ -45569,8 +45569,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 @@ -45579,8 +45579,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 @@ -45589,8 +45589,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45599,8 +45599,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45609,8 +45609,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45619,8 +45619,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45629,8 +45629,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45639,8 +45639,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45649,8 +45649,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -45661,8 +45661,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45671,8 +45671,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Unknown "XMM1/M16"; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 103u Opcode = Opcode.VFPCLASSSS PrefixType = Mandatory P66 @@ -45681,8 +45681,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 104(0x68) |] @@ -45709,8 +45709,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 @@ -45719,8 +45719,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 112u Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 @@ -45729,8 +45729,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -45741,8 +45741,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 @@ -45751,8 +45751,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 @@ -45761,8 +45761,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45771,8 +45771,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45781,8 +45781,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45791,8 +45791,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -45803,8 +45803,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 @@ -45813,8 +45813,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 114u Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 @@ -45823,8 +45823,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -45835,8 +45835,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 @@ -45845,8 +45845,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 @@ -45855,8 +45855,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45865,8 +45865,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45875,8 +45875,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45885,8 +45885,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.B - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 116(0x74) |] @@ -46053,8 +46053,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46063,8 +46063,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46073,8 +46073,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46083,8 +46083,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] OpEn = OpEn.A - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 195(0xC3) |] @@ -46117,8 +46117,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -46127,8 +46127,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -46137,8 +46137,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -46149,8 +46149,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -46159,8 +46159,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -46169,8 +46169,8 @@ let (evexThree3A: InstructionCore[][]) = ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.C - Mode64 = Mode64.None - Compat = CompatLegMode.None } + Mode64 = Mode64.Valid + Compat = CompatLegMode.Valid } |] [| // index 208(0xD0) |] diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 22a5c78a2..46468ad74 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -301,9 +301,10 @@ type IntelParser(wordSz, reader) = OperandParsers.parseMemOrReg modRM span phlp | Reg sz when ic.OpEn = OpEn.O || ic.OpEn = OpEn.OI -> // Opcode[2:0] contains the operand. + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) - OperandParsers.findRegRBits (oprSizeToRegType sz) phlp.REXPrefix regBit - |> OprReg + OperandParsers.getOprFromRegGrpREX regBit phlp | Reg sz -> match ic.OpEn with | OpEn.RVM when i = 1 -> OperandParsers.parseVVVVReg phlp From 38418973ce12c27c810644738d9773cb5f1e3edc Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Wed, 8 Apr 2026 16:16:40 +0900 Subject: [PATCH 11/26] [Intel] Add TupleType and update Op/En --- src/FrontEnd/Intel/Intel.fs | 16985 ++++++++++++++++---------- src/FrontEnd/Intel/IntelTypes.fs | 27 +- src/FrontEnd/Intel/Parser.fs | 5 +- src/FrontEnd/Intel/ParsingHelper.fs | 22 - 4 files changed, 10577 insertions(+), 6462 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 282000c2d..87c3ea216 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -12,7 +12,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -24,7 +25,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -34,7 +36,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -44,7 +47,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -56,7 +60,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -68,7 +73,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -78,7 +84,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -88,7 +95,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -100,7 +108,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -112,7 +121,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 5u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -122,7 +132,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 5u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -132,7 +143,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -144,7 +156,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.ES, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -156,7 +169,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.ES, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -168,7 +182,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -180,7 +195,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.OR PrefixType = Legacy NP @@ -190,7 +206,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.OR PrefixType = Legacy NP @@ -200,7 +217,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -212,7 +230,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -224,7 +243,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 11u Opcode = Opcode.OR PrefixType = Legacy NP @@ -234,7 +254,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 11u Opcode = Opcode.OR PrefixType = Legacy NP @@ -244,7 +265,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -256,7 +278,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -268,7 +291,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 13u Opcode = Opcode.OR PrefixType = Legacy NP @@ -278,7 +302,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 13u Opcode = Opcode.OR PrefixType = Legacy NP @@ -288,7 +313,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -300,7 +326,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.CS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 15(0x0F) |] @@ -314,7 +341,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -326,7 +354,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -336,7 +365,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -346,7 +376,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -358,7 +389,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -370,7 +402,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 19u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -380,7 +413,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 19u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -390,7 +424,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -402,7 +437,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -414,7 +450,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -424,7 +461,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -434,7 +472,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -446,7 +485,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.SS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -458,7 +498,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.SS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -470,7 +511,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -482,7 +524,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 25u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -492,7 +535,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 25u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -502,7 +546,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -514,7 +559,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -526,7 +572,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -536,7 +583,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -546,7 +594,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 28(0x1C) { OpcodeByte = 28u @@ -558,7 +607,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -570,7 +620,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 29u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -580,7 +631,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 29u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -590,7 +642,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -602,7 +655,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -614,7 +668,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -626,7 +681,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -638,7 +694,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 33u Opcode = Opcode.AND PrefixType = Legacy NP @@ -648,7 +705,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 33u Opcode = Opcode.AND PrefixType = Legacy NP @@ -658,7 +716,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -670,7 +729,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -682,7 +742,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 35u Opcode = Opcode.AND PrefixType = Legacy NP @@ -692,7 +753,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 35u Opcode = Opcode.AND PrefixType = Legacy NP @@ -702,7 +764,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -714,7 +777,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -726,7 +790,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 37u Opcode = Opcode.AND PrefixType = Legacy NP @@ -736,7 +801,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 37u Opcode = Opcode.AND PrefixType = Legacy NP @@ -746,7 +812,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 38(0x26) |] @@ -760,7 +827,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 40(0x28) { OpcodeByte = 40u @@ -772,7 +840,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -784,7 +853,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -794,7 +864,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -804,7 +875,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -816,7 +888,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -828,7 +901,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -838,7 +912,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -848,7 +923,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -860,7 +936,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -872,7 +949,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -882,7 +960,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -892,7 +971,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 46(0x2E) |] @@ -906,7 +986,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 48(0x30) { OpcodeByte = 48u @@ -918,7 +999,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -930,7 +1012,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 49u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -940,7 +1023,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 49u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -950,7 +1034,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -962,7 +1047,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -974,7 +1060,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 51u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -984,7 +1071,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 51u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -994,7 +1082,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -1006,7 +1095,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -1018,7 +1108,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 53u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -1028,7 +1119,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 53u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -1038,7 +1130,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 54(0x36) |] @@ -1052,7 +1145,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -1064,7 +1158,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -1076,7 +1171,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1086,7 +1182,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1096,7 +1193,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -1108,7 +1206,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -1120,7 +1219,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 59u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1130,7 +1230,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 59u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1140,7 +1241,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -1152,7 +1254,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -1164,7 +1267,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 61u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1174,7 +1278,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 61u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -1184,7 +1289,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 62(0x3E) |] @@ -1198,7 +1304,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -1210,7 +1317,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 64u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1220,7 +1328,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -1232,7 +1341,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1242,7 +1352,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -1254,7 +1365,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1264,7 +1376,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -1276,7 +1389,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1286,7 +1400,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -1298,7 +1413,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1308,7 +1424,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -1320,7 +1437,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1330,7 +1448,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -1342,7 +1461,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1352,7 +1472,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -1364,7 +1485,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.INC PrefixType = Legacy NP @@ -1374,7 +1496,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 72(0x48) { OpcodeByte = 72u @@ -1386,7 +1509,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 72u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1396,7 +1520,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 73(0x49) { OpcodeByte = 73u @@ -1408,7 +1533,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1418,7 +1544,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 74(0x4A) { OpcodeByte = 74u @@ -1430,7 +1557,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1440,7 +1568,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -1452,7 +1581,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1462,7 +1592,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 76(0x4C) { OpcodeByte = 76u @@ -1474,7 +1605,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1484,7 +1616,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 77(0x4D) { OpcodeByte = 77u @@ -1496,7 +1629,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1506,7 +1640,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 78(0x4E) { OpcodeByte = 78u @@ -1518,7 +1653,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1528,7 +1664,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 79(0x4F) { OpcodeByte = 79u @@ -1540,7 +1677,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -1550,7 +1688,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 80(0x50) { OpcodeByte = 80u @@ -1562,7 +1701,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1572,7 +1712,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1582,7 +1723,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -1594,7 +1736,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1604,7 +1747,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1614,7 +1758,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -1626,7 +1771,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1636,7 +1782,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1646,7 +1793,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -1658,7 +1806,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1668,7 +1817,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1678,7 +1828,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -1690,7 +1841,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1700,7 +1852,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1710,7 +1863,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -1722,7 +1876,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1732,7 +1887,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1742,7 +1898,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -1754,7 +1911,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1764,7 +1922,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1774,7 +1933,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -1786,7 +1946,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1796,7 +1957,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -1806,7 +1968,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -1818,7 +1981,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1828,7 +1992,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1838,7 +2003,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -1850,7 +2016,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1860,7 +2027,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1870,7 +2038,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -1882,7 +2051,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1892,7 +2062,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1902,7 +2073,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -1914,7 +2086,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1924,7 +2097,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1934,7 +2108,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -1946,7 +2121,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1956,7 +2132,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1966,7 +2143,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -1978,7 +2156,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1988,7 +2167,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.POP PrefixType = Legacy NP @@ -1998,7 +2178,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -2010,7 +2191,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.POP PrefixType = Legacy NP @@ -2020,7 +2202,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.POP PrefixType = Legacy NP @@ -2030,7 +2213,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -2042,7 +2226,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.POP PrefixType = Legacy NP @@ -2052,7 +2237,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.POP PrefixType = Legacy NP @@ -2062,7 +2248,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -2074,7 +2261,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 96u Opcode = Opcode.PUSHAD PrefixType = Legacy NP @@ -2084,7 +2272,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -2096,7 +2285,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 97u Opcode = Opcode.POPAD PrefixType = Legacy NP @@ -2106,7 +2296,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -2118,7 +2309,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.BOUND PrefixType = Legacy NP @@ -2128,7 +2320,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "M32&32" |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -2140,7 +2333,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.MOVSXD PrefixType = Legacy NP @@ -2150,7 +2344,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.MOVSXD PrefixType = Legacy NP @@ -2160,7 +2355,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.MOVSXD PrefixType = Legacy NP @@ -2170,7 +2366,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 100(0x64) |] @@ -2190,7 +2387,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 104u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -2200,7 +2398,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -2212,7 +2411,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16; Imm Sz16 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 105u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -2222,7 +2422,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 105u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -2232,7 +2433,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -2244,7 +2446,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -2256,7 +2459,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 107u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -2266,7 +2470,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 107u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -2276,7 +2481,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -2288,7 +2494,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 108u Opcode = Opcode.INSB PrefixType = Legacy NP @@ -2298,7 +2505,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -2310,7 +2518,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 109u Opcode = Opcode.INS PrefixType = Legacy NP @@ -2320,7 +2529,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32; FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 109u Opcode = Opcode.INSW PrefixType = Legacy NP @@ -2330,7 +2540,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 109u Opcode = Opcode.INSD PrefixType = Legacy NP @@ -2340,7 +2551,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -2352,7 +2564,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.OUTSB PrefixType = Legacy NP @@ -2362,7 +2575,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -2374,7 +2588,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.OUTS PrefixType = Legacy NP @@ -2384,7 +2599,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.OUTSW PrefixType = Legacy NP @@ -2394,7 +2610,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.OUTSD PrefixType = Legacy NP @@ -2404,7 +2621,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -2416,7 +2634,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -2428,7 +2647,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -2440,7 +2660,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.JB PrefixType = Legacy NP @@ -2450,7 +2671,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.JB PrefixType = Legacy NP @@ -2460,7 +2682,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -2472,7 +2695,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.JAE PrefixType = Legacy NP @@ -2482,7 +2706,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.JAE PrefixType = Legacy NP @@ -2492,7 +2717,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -2504,7 +2730,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 116u Opcode = Opcode.JZ PrefixType = Legacy NP @@ -2514,7 +2741,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -2526,7 +2754,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 117u Opcode = Opcode.JNZ PrefixType = Legacy NP @@ -2536,7 +2765,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -2548,7 +2778,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 118u Opcode = Opcode.JBE PrefixType = Legacy NP @@ -2558,7 +2789,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -2570,7 +2802,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 119u Opcode = Opcode.JNBE PrefixType = Legacy NP @@ -2580,7 +2813,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 120(0x78) { OpcodeByte = 120u @@ -2592,7 +2826,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -2604,7 +2839,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 122(0x7A) { OpcodeByte = 122u @@ -2616,7 +2852,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 122u Opcode = Opcode.JP PrefixType = Legacy NP @@ -2626,7 +2863,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 123(0x7B) { OpcodeByte = 123u @@ -2638,7 +2876,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 123u Opcode = Opcode.JNP PrefixType = Legacy NP @@ -2648,7 +2887,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 124(0x7C) { OpcodeByte = 124u @@ -2660,7 +2900,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 124u Opcode = Opcode.JL PrefixType = Legacy NP @@ -2670,7 +2911,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -2682,7 +2924,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 125u Opcode = Opcode.JGE PrefixType = Legacy NP @@ -2692,7 +2935,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -2704,7 +2948,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.JNG PrefixType = Legacy NP @@ -2714,7 +2959,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -2726,7 +2972,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.JNLE PrefixType = Legacy NP @@ -2736,7 +2983,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 128(0x80) { OpcodeByte = 128u @@ -2748,7 +2996,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -2758,7 +3007,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.AND PrefixType = Legacy NP @@ -2768,7 +3018,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -2778,7 +3029,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.OR PrefixType = Legacy NP @@ -2788,7 +3040,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -2798,7 +3051,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -2808,7 +3062,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -2818,7 +3073,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 129(0x81) { OpcodeByte = 129u @@ -2830,7 +3086,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -2840,7 +3097,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -2850,7 +3108,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -2860,7 +3119,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -2870,7 +3130,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -2880,7 +3141,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.AND PrefixType = Legacy NP @@ -2890,7 +3152,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.AND PrefixType = Legacy NP @@ -2900,7 +3163,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.AND PrefixType = Legacy NP @@ -2910,7 +3174,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -2920,7 +3185,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -2930,7 +3196,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -2940,7 +3207,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.OR PrefixType = Legacy NP @@ -2950,7 +3218,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.OR PrefixType = Legacy NP @@ -2960,7 +3229,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.OR PrefixType = Legacy NP @@ -2970,7 +3240,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -2980,7 +3251,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -2990,7 +3262,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -3000,7 +3273,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3010,7 +3284,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3020,7 +3295,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3030,7 +3306,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3040,7 +3317,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3050,7 +3328,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3060,7 +3339,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 130(0x82) |] @@ -3074,7 +3354,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -3084,7 +3365,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.ADC PrefixType = Legacy NP @@ -3094,7 +3376,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -3104,7 +3387,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -3114,7 +3398,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.ADD PrefixType = Legacy NP @@ -3124,7 +3409,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.AND PrefixType = Legacy NP @@ -3134,7 +3420,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.AND PrefixType = Legacy NP @@ -3144,7 +3431,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.AND PrefixType = Legacy NP @@ -3154,7 +3442,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -3164,7 +3453,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -3174,7 +3464,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.CMP PrefixType = Legacy NP @@ -3184,7 +3475,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.OR PrefixType = Legacy NP @@ -3194,7 +3486,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.OR PrefixType = Legacy NP @@ -3204,7 +3497,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.OR PrefixType = Legacy NP @@ -3214,7 +3508,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -3224,7 +3519,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -3234,7 +3530,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SBB PrefixType = Legacy NP @@ -3244,7 +3541,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3254,7 +3552,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3264,7 +3563,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.SUB PrefixType = Legacy NP @@ -3274,7 +3574,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3284,7 +3585,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3294,7 +3596,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.XOR PrefixType = Legacy NP @@ -3304,7 +3607,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 132(0x84) { OpcodeByte = 132u @@ -3316,7 +3620,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 133(0x85) { OpcodeByte = 133u @@ -3328,7 +3633,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 133u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -3338,7 +3644,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 133u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -3348,7 +3655,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 134(0x86) { OpcodeByte = 134u @@ -3360,7 +3668,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 134u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3370,7 +3679,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 135(0x87) { OpcodeByte = 135u @@ -3382,7 +3692,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3392,7 +3703,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3402,7 +3714,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3412,7 +3725,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3422,7 +3736,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3432,7 +3747,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 136(0x88) { OpcodeByte = 136u @@ -3444,7 +3760,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 137(0x89) { OpcodeByte = 137u @@ -3456,7 +3773,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 137u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3466,7 +3784,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 137u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3476,7 +3795,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 138(0x8A) { OpcodeByte = 138u @@ -3488,7 +3808,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 139(0x8B) { OpcodeByte = 139u @@ -3500,7 +3821,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 139u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3510,7 +3832,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 139u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3520,7 +3843,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 140(0x8C) { OpcodeByte = 140u @@ -3532,7 +3856,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3542,7 +3867,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "R16/R32/M16"; Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3552,7 +3878,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RMdiff(Sz64, Sz16); Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 141(0x8D) { OpcodeByte = 141u @@ -3564,7 +3891,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 141u Opcode = Opcode.LEA PrefixType = Legacy NP @@ -3574,7 +3902,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 141u Opcode = Opcode.LEA PrefixType = Legacy NP @@ -3584,7 +3913,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 142(0x8E) { OpcodeByte = 142u @@ -3596,7 +3926,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Sreg; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -3606,7 +3937,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Sreg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 143(0x8F) { OpcodeByte = 143u @@ -3618,7 +3950,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 143u Opcode = Opcode.POP PrefixType = Legacy NP @@ -3628,7 +3961,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 143u Opcode = Opcode.POP PrefixType = Legacy NP @@ -3638,7 +3972,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 144(0x90) { OpcodeByte = 144u @@ -3650,7 +3985,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.PAUSE PrefixType = Mandatory F3 @@ -3660,7 +3996,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3670,7 +4007,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3680,7 +4018,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3690,7 +4029,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3700,7 +4040,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3710,7 +4051,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3720,7 +4062,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -3732,7 +4075,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3742,7 +4086,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3752,7 +4097,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3762,7 +4108,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3772,7 +4119,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3782,7 +4130,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -3794,7 +4143,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3804,7 +4154,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3814,7 +4165,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3824,7 +4176,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3834,7 +4187,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3844,7 +4198,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -3856,7 +4211,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3866,7 +4222,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3876,7 +4233,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3886,7 +4244,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3896,7 +4255,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3906,7 +4266,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 148(0x94) { OpcodeByte = 148u @@ -3918,7 +4279,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3928,7 +4290,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3938,7 +4301,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3948,7 +4312,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3958,7 +4323,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3968,7 +4334,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 149(0x95) { OpcodeByte = 149u @@ -3980,7 +4347,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -3990,7 +4358,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4000,7 +4369,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4010,7 +4380,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4020,7 +4391,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4030,7 +4402,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 150(0x96) { OpcodeByte = 150u @@ -4042,7 +4415,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4052,7 +4426,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4062,7 +4437,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4072,7 +4448,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4082,7 +4459,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4092,7 +4470,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -4104,7 +4483,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4114,7 +4494,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4124,7 +4505,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4134,7 +4516,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4144,7 +4527,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.XCHG PrefixType = Legacy NP @@ -4154,7 +4538,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -4166,7 +4551,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.CWDE PrefixType = Legacy NP @@ -4176,7 +4562,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.CDQE PrefixType = Legacy NP @@ -4186,7 +4573,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -4198,7 +4586,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.CDQ PrefixType = Legacy NP @@ -4208,7 +4597,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.CQO PrefixType = Legacy NP @@ -4218,7 +4608,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -4230,7 +4621,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz16 |] OpEn = OpEn.D Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 154u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -4240,7 +4632,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -4252,7 +4645,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 155u Opcode = Opcode.FWAIT PrefixType = Legacy NP @@ -4262,7 +4656,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -4274,7 +4669,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.PUSHFD PrefixType = Legacy NP @@ -4284,7 +4680,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.PUSHFQ PrefixType = Legacy NP @@ -4294,7 +4691,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -4306,7 +4704,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 157u Opcode = Opcode.POPFD PrefixType = Legacy NP @@ -4316,7 +4715,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 157u Opcode = Opcode.POPFQ PrefixType = Legacy NP @@ -4326,7 +4726,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -4338,7 +4739,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -4350,7 +4752,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 160(0xA0) { OpcodeByte = 160u @@ -4362,7 +4765,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 160u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4372,7 +4776,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 161(0xA1) { OpcodeByte = 161u @@ -4384,7 +4789,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Moffs Sz16 |] OpEn = OpEn.FD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 161u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4394,7 +4800,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Moffs Sz32 |] OpEn = OpEn.FD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 161u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4404,7 +4811,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Moffs Sz64 |] OpEn = OpEn.FD Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 162(0xA2) { OpcodeByte = 162u @@ -4416,7 +4824,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 162u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4426,7 +4835,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 163(0xA3) { OpcodeByte = 163u @@ -4438,7 +4848,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Moffs Sz16; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 163u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4448,7 +4859,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Moffs Sz32; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 163u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -4458,7 +4870,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Moffs Sz64; FixedReg(Register.RAX, Explicit) |] OpEn = OpEn.TD Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 164(0xA4) { OpcodeByte = 164u @@ -4470,7 +4883,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8; Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 164u Opcode = Opcode.MOVSB PrefixType = Legacy NP @@ -4480,7 +4894,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 165(0xA5) { OpcodeByte = 165u @@ -4492,7 +4907,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16; Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4502,7 +4918,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32; Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4512,7 +4929,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64; Mem Sz64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.MOVSW PrefixType = Legacy NP @@ -4522,7 +4940,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.MOVSD PrefixType = Legacy NP @@ -4532,7 +4951,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.MOVSQ PrefixType = Legacy NP @@ -4542,7 +4962,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 166(0xA6) { OpcodeByte = 166u @@ -4554,7 +4975,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8; Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 166u Opcode = Opcode.CMPSB PrefixType = Legacy NP @@ -4564,7 +4986,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 167(0xA7) { OpcodeByte = 167u @@ -4576,7 +4999,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16; Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4586,7 +5010,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32; Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4596,7 +5021,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64; Mem Sz64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.CMPSW PrefixType = Legacy NP @@ -4606,7 +5032,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.CMPSD PrefixType = Legacy NP @@ -4616,7 +5043,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.CMPSQ PrefixType = Legacy NP @@ -4626,7 +5054,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 168(0xA8) { OpcodeByte = 168u @@ -4638,7 +5067,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -4650,7 +5080,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 169u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -4660,7 +5091,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 169u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -4670,7 +5102,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -4682,7 +5115,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 170u Opcode = Opcode.STOSB PrefixType = Legacy NP @@ -4692,7 +5126,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -4704,7 +5139,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4714,7 +5150,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4724,7 +5161,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.STOSW PrefixType = Legacy NP @@ -4734,7 +5172,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.STOSD PrefixType = Legacy NP @@ -4744,7 +5183,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.STOSQ PrefixType = Legacy NP @@ -4754,7 +5194,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -4766,7 +5207,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.LODSB PrefixType = Legacy NP @@ -4776,7 +5218,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -4788,7 +5231,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4798,7 +5242,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4808,7 +5253,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.LODSW PrefixType = Legacy NP @@ -4818,7 +5264,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.LODSD PrefixType = Legacy NP @@ -4828,7 +5275,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.LODSQ PrefixType = Legacy NP @@ -4838,7 +5286,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -4850,7 +5299,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.SCASB PrefixType = Legacy NP @@ -4860,7 +5310,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -4872,7 +5323,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4882,7 +5334,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -4892,7 +5345,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.SCASW PrefixType = Legacy NP @@ -4902,7 +5356,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.SCASD PrefixType = Legacy NP @@ -4912,7 +5367,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.SCASQ PrefixType = Legacy NP @@ -4922,7 +5378,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 176(0xB0) { OpcodeByte = 176u @@ -4934,7 +5391,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 177(0xB1) { OpcodeByte = 177u @@ -4946,7 +5404,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 178(0xB2) { OpcodeByte = 178u @@ -4958,7 +5417,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 179(0xB3) { OpcodeByte = 179u @@ -4970,7 +5430,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 180(0xB4) { OpcodeByte = 180u @@ -4982,7 +5443,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -4994,7 +5456,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -5006,7 +5469,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -5018,7 +5482,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz8; Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -5030,7 +5495,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5040,7 +5506,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5050,7 +5517,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -5062,7 +5530,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 185u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5072,7 +5541,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 185u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5082,7 +5552,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -5094,7 +5565,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5104,7 +5576,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5114,7 +5587,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -5126,7 +5600,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 187u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5136,7 +5611,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 187u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5146,7 +5622,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -5158,7 +5635,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5168,7 +5646,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5178,7 +5657,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -5190,7 +5670,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5200,7 +5681,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5210,7 +5692,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -5222,7 +5705,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5232,7 +5716,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5242,7 +5727,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -5254,7 +5740,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 191u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5264,7 +5751,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 191u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5274,7 +5762,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz64; Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 192(0xC0) { OpcodeByte = 192u @@ -5286,7 +5775,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -5296,7 +5786,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -5306,7 +5797,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -5316,7 +5808,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -5326,7 +5819,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -5336,7 +5830,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -5346,7 +5841,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 192u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -5356,7 +5852,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 193(0xC1) { OpcodeByte = 193u @@ -5368,7 +5865,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -5378,7 +5876,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -5388,7 +5887,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -5398,7 +5898,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -5408,7 +5909,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -5418,7 +5920,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -5428,7 +5931,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -5438,7 +5942,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -5448,7 +5953,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -5458,7 +5964,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -5468,7 +5975,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -5478,7 +5986,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -5488,7 +5997,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -5498,7 +6008,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -5508,7 +6019,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -5518,7 +6030,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -5528,7 +6041,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -5538,7 +6052,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -5548,7 +6063,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -5558,7 +6074,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -5568,7 +6085,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -5578,7 +6096,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -5588,7 +6107,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -5598,7 +6118,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 194(0xC2) { OpcodeByte = 194u @@ -5610,7 +6131,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 195(0xC3) { OpcodeByte = 195u @@ -5622,7 +6144,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 196(0xC4) { OpcodeByte = 196u @@ -5634,7 +6157,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 196u Opcode = Opcode.LES PrefixType = Legacy NP @@ -5644,7 +6168,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -5656,7 +6181,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 197u Opcode = Opcode.LDS PrefixType = Legacy NP @@ -5666,7 +6192,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -5678,7 +6205,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 198u Opcode = Opcode.XABORT PrefixType = Legacy NP @@ -5688,7 +6216,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -5700,7 +6229,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5710,7 +6240,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.MOV PrefixType = Legacy NP @@ -5720,7 +6251,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XBEGIN PrefixType = Legacy NP @@ -5730,7 +6262,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XBEGIN PrefixType = Legacy NP @@ -5740,7 +6273,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -5752,7 +6286,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16; FixedImm 0 |] OpEn = OpEn.II Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 200u Opcode = Opcode.ENTER PrefixType = Legacy NP @@ -5762,7 +6297,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16; FixedImm 1 |] OpEn = OpEn.II Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 200u Opcode = Opcode.ENTER PrefixType = Legacy NP @@ -5772,7 +6308,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16; Imm Sz8 |] OpEn = OpEn.II Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 201(0xC9) { OpcodeByte = 201u @@ -5784,7 +6321,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 201u Opcode = Opcode.LEAVE PrefixType = Legacy NP @@ -5794,7 +6332,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 201u Opcode = Opcode.LEAVE PrefixType = Legacy NP @@ -5804,7 +6343,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 202(0xCA) { OpcodeByte = 202u @@ -5816,7 +6356,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -5828,7 +6369,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -5840,7 +6382,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -5852,7 +6395,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 206(0xCE) { OpcodeByte = 206u @@ -5864,7 +6408,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -5876,7 +6421,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 207u Opcode = Opcode.IRETD PrefixType = Legacy NP @@ -5886,7 +6432,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 207u Opcode = Opcode.IRETQ PrefixType = Legacy NP @@ -5896,7 +6443,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 208(0xD0) { OpcodeByte = 208u @@ -5908,7 +6456,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -5918,7 +6467,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -5928,7 +6478,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -5938,7 +6489,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -5948,7 +6500,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -5958,7 +6511,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -5968,7 +6522,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -5978,7 +6533,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 209(0xD1) { OpcodeByte = 209u @@ -5990,7 +6546,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -6000,7 +6557,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -6010,7 +6568,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6020,7 +6579,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6030,7 +6590,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6040,7 +6601,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6050,7 +6612,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6060,7 +6623,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6070,7 +6634,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6080,7 +6645,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6090,7 +6656,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6100,7 +6667,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6110,7 +6678,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6120,7 +6689,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6130,7 +6700,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6140,7 +6711,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6150,7 +6722,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6160,7 +6733,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6170,7 +6744,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6180,7 +6755,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6190,7 +6766,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6200,7 +6777,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6210,7 +6788,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6220,7 +6799,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -6232,7 +6812,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6242,7 +6823,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6252,7 +6834,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6262,7 +6845,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6272,7 +6856,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6282,7 +6867,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6292,7 +6878,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6302,7 +6889,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -6314,7 +6902,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -6324,7 +6913,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.RCL PrefixType = Legacy NP @@ -6334,7 +6924,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6344,7 +6935,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6354,7 +6946,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.RCR PrefixType = Legacy NP @@ -6364,7 +6957,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6374,7 +6968,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6384,7 +6979,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROL PrefixType = Legacy NP @@ -6394,7 +6990,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6404,7 +7001,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6414,7 +7012,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.ROR PrefixType = Legacy NP @@ -6424,7 +7023,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6434,7 +7034,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6444,7 +7045,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -6454,7 +7056,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6464,7 +7067,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6474,7 +7078,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SAR PrefixType = Legacy NP @@ -6484,7 +7089,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6494,7 +7100,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6504,7 +7111,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHL PrefixType = Legacy NP @@ -6514,7 +7122,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6524,7 +7133,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6534,7 +7144,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.SHR PrefixType = Legacy NP @@ -6544,7 +7155,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -6556,7 +7168,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 212u Opcode = Opcode.AAM PrefixType = Legacy NP @@ -6566,7 +7179,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -6578,7 +7192,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 213u Opcode = Opcode.AAD PrefixType = Legacy NP @@ -6588,7 +7203,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -6600,7 +7216,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 215(0xD7) { OpcodeByte = 215u @@ -6612,7 +7229,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 215u Opcode = Opcode.XLATB PrefixType = Legacy NP @@ -6622,7 +7240,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 215u Opcode = Opcode.XLATB PrefixType = Legacy NP @@ -6632,7 +7251,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 216(0xD8) { OpcodeByte = 216u @@ -6644,7 +7264,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FADD PrefixType = Legacy NP @@ -6654,7 +7275,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOM PrefixType = Legacy NP @@ -6664,7 +7286,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOM PrefixType = Legacy NP @@ -6674,7 +7297,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOM PrefixType = Legacy NP @@ -6684,7 +7308,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOMP PrefixType = Legacy NP @@ -6694,7 +7319,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOMP PrefixType = Legacy NP @@ -6704,7 +7330,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FCOMP PrefixType = Legacy NP @@ -6714,7 +7341,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FDIV PrefixType = Legacy NP @@ -6724,7 +7352,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FDIV PrefixType = Legacy NP @@ -6734,7 +7363,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FDIVR PrefixType = Legacy NP @@ -6744,7 +7374,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FDIVR PrefixType = Legacy NP @@ -6754,7 +7385,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FMUL PrefixType = Legacy NP @@ -6764,7 +7396,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FMUL PrefixType = Legacy NP @@ -6774,7 +7407,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FSUB PrefixType = Legacy NP @@ -6784,7 +7418,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FSUB PrefixType = Legacy NP @@ -6794,7 +7429,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FSUBR PrefixType = Legacy NP @@ -6804,7 +7440,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.FSUBR PrefixType = Legacy NP @@ -6814,7 +7451,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -6826,7 +7464,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FABS PrefixType = Legacy NP @@ -6836,7 +7475,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FCHS PrefixType = Legacy NP @@ -6846,7 +7486,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FCOS PrefixType = Legacy NP @@ -6856,7 +7497,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FDECSTP PrefixType = Legacy NP @@ -6866,7 +7508,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FINCSTP PrefixType = Legacy NP @@ -6876,7 +7519,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLD PrefixType = Legacy NP @@ -6886,7 +7530,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLD PrefixType = Legacy NP @@ -6896,7 +7541,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLD1 PrefixType = Legacy NP @@ -6906,7 +7552,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDL2T PrefixType = Legacy NP @@ -6916,7 +7563,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDL2E PrefixType = Legacy NP @@ -6926,7 +7574,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDPI PrefixType = Legacy NP @@ -6936,7 +7585,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDLG2 PrefixType = Legacy NP @@ -6946,7 +7596,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDLN2 PrefixType = Legacy NP @@ -6956,7 +7607,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDZ PrefixType = Legacy NP @@ -6966,7 +7618,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDCW PrefixType = Legacy NP @@ -6976,7 +7629,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FLDENV PrefixType = Legacy NP @@ -6986,7 +7640,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FNOP PrefixType = Legacy NP @@ -6996,7 +7651,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FPREM PrefixType = Legacy NP @@ -7006,7 +7662,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FPREM1 PrefixType = Legacy NP @@ -7016,7 +7673,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FRNDINT PrefixType = Legacy NP @@ -7026,7 +7684,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FSCALE PrefixType = Legacy NP @@ -7036,7 +7695,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FSIN PrefixType = Legacy NP @@ -7046,7 +7706,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FSINCOS PrefixType = Legacy NP @@ -7056,7 +7717,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FSQRT PrefixType = Legacy NP @@ -7066,7 +7728,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FST PrefixType = Legacy NP @@ -7076,7 +7739,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FSTP PrefixType = Legacy NP @@ -7086,7 +7750,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FNSTCW PrefixType = Legacy NP @@ -7096,7 +7761,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FNSTENV PrefixType = Legacy NP @@ -7106,7 +7772,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M14/28BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FTST PrefixType = Legacy NP @@ -7116,7 +7783,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FXAM PrefixType = Legacy NP @@ -7126,7 +7794,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FXCH PrefixType = Legacy NP @@ -7136,7 +7805,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FXCH PrefixType = Legacy NP @@ -7146,7 +7816,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FXTRACT PrefixType = Legacy NP @@ -7156,7 +7827,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FYL2X PrefixType = Legacy NP @@ -7166,7 +7838,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.FYL2XP1 PrefixType = Legacy NP @@ -7176,7 +7849,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -7188,7 +7862,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FCMOVB PrefixType = Legacy NP @@ -7198,7 +7873,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FCMOVE PrefixType = Legacy NP @@ -7208,7 +7884,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FCMOVBE PrefixType = Legacy NP @@ -7218,7 +7895,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FCMOVU PrefixType = Legacy NP @@ -7228,7 +7906,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FIDIV PrefixType = Legacy NP @@ -7238,7 +7917,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FIDIVR PrefixType = Legacy NP @@ -7248,7 +7928,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FICOM PrefixType = Legacy NP @@ -7258,7 +7939,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FICOMP PrefixType = Legacy NP @@ -7268,7 +7950,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FIMUL PrefixType = Legacy NP @@ -7278,7 +7961,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FISUB PrefixType = Legacy NP @@ -7288,7 +7972,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FISUBR PrefixType = Legacy NP @@ -7298,7 +7983,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.FUCOMPP PrefixType = Legacy NP @@ -7308,7 +7994,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -7320,7 +8007,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FCMOVNB PrefixType = Legacy NP @@ -7330,7 +8018,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FCMOVNE PrefixType = Legacy NP @@ -7340,7 +8029,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FCMOVNBE PrefixType = Legacy NP @@ -7350,7 +8040,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FCMOVNU PrefixType = Legacy NP @@ -7360,27 +8051,30 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.STiModRM 0xF0uy - Operands = [| STReg None; STReg None |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FUCOMI PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.STiModRM 0xE8uy - Operands = [| STReg None; STReg None |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FILD PrefixType = Legacy NP @@ -7390,7 +8084,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FNINIT PrefixType = Legacy NP @@ -7400,7 +8095,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FIST PrefixType = Legacy NP @@ -7410,7 +8106,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FISTP PrefixType = Legacy NP @@ -7420,7 +8117,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FISTTP PrefixType = Legacy NP @@ -7430,7 +8128,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FLD PrefixType = Legacy NP @@ -7440,7 +8139,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.FSTP PrefixType = Legacy NP @@ -7450,7 +8150,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -7462,7 +8163,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FADD PrefixType = Legacy NP @@ -7472,7 +8174,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FCOM PrefixType = Legacy NP @@ -7482,7 +8185,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FCOMP PrefixType = Legacy NP @@ -7492,7 +8196,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FDIV PrefixType = Legacy NP @@ -7502,7 +8207,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FDIV PrefixType = Legacy NP @@ -7512,7 +8218,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FDIVR PrefixType = Legacy NP @@ -7522,7 +8229,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FDIVR PrefixType = Legacy NP @@ -7532,7 +8240,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FMUL PrefixType = Legacy NP @@ -7542,7 +8251,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FMUL PrefixType = Legacy NP @@ -7552,7 +8262,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FSUB PrefixType = Legacy NP @@ -7562,7 +8273,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FSUB PrefixType = Legacy NP @@ -7572,7 +8284,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FSUBR PrefixType = Legacy NP @@ -7582,7 +8295,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.FSUBR PrefixType = Legacy NP @@ -7592,7 +8306,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -7604,7 +8319,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FISTTP PrefixType = Legacy NP @@ -7614,7 +8330,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FLD PrefixType = Legacy NP @@ -7624,7 +8341,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FRSTOR PrefixType = Legacy NP @@ -7634,7 +8352,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FNSAVE PrefixType = Legacy NP @@ -7644,7 +8363,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M94/108BYTE" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FST PrefixType = Legacy NP @@ -7654,7 +8374,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FST PrefixType = Legacy NP @@ -7664,7 +8385,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FSTP PrefixType = Legacy NP @@ -7674,7 +8396,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FSTP PrefixType = Legacy NP @@ -7684,7 +8407,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FNSTSW PrefixType = Legacy NP @@ -7694,7 +8418,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FUCOM PrefixType = Legacy NP @@ -7704,7 +8429,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FUCOM PrefixType = Legacy NP @@ -7714,7 +8440,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FUCOMP PrefixType = Legacy NP @@ -7724,7 +8451,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.FUCOMP PrefixType = Legacy NP @@ -7734,7 +8462,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -7746,7 +8475,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FADDP PrefixType = Legacy NP @@ -7756,7 +8486,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FIADD PrefixType = Legacy NP @@ -7766,7 +8497,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FCOMPP PrefixType = Legacy NP @@ -7776,7 +8508,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FDIVP PrefixType = Legacy NP @@ -7786,7 +8519,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FDIVP PrefixType = Legacy NP @@ -7796,7 +8530,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FIDIV PrefixType = Legacy NP @@ -7806,7 +8541,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FDIVRP PrefixType = Legacy NP @@ -7816,7 +8552,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FDIVRP PrefixType = Legacy NP @@ -7826,7 +8563,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FIDIVR PrefixType = Legacy NP @@ -7836,7 +8574,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FICOM PrefixType = Legacy NP @@ -7846,7 +8585,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FICOMP PrefixType = Legacy NP @@ -7856,7 +8596,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FMULP PrefixType = Legacy NP @@ -7866,7 +8607,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FMULP PrefixType = Legacy NP @@ -7876,7 +8618,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FIMUL PrefixType = Legacy NP @@ -7886,7 +8629,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FSUBP PrefixType = Legacy NP @@ -7896,7 +8640,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FSUBP PrefixType = Legacy NP @@ -7906,7 +8651,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FISUB PrefixType = Legacy NP @@ -7916,7 +8662,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FSUBRP PrefixType = Legacy NP @@ -7926,7 +8673,8 @@ let (norOne: InstructionCore[][]) = Operands = [| STReg None; STReg(Some Register.ST0) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FSUBRP PrefixType = Legacy NP @@ -7936,7 +8684,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.FISUBR PrefixType = Legacy NP @@ -7946,7 +8695,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -7958,7 +8708,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FBSTP PrefixType = Legacy NP @@ -7968,27 +8719,30 @@ let (norOne: InstructionCore[][]) = Operands = [| Unknown "M80BCD" |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.STiModRM 0xF0uy - Operands = [| STReg None; STReg None |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FUCOMIP PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.STiModRM 0xE8uy - Operands = [| STReg None; STReg None |] + Operands = [| STReg(Some Register.ST0); STReg None |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FILD PrefixType = Legacy NP @@ -7998,7 +8752,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FILD PrefixType = Legacy NP @@ -8008,7 +8763,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FIST PrefixType = Legacy NP @@ -8018,7 +8774,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FISTP PrefixType = Legacy NP @@ -8028,7 +8785,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FISTP PrefixType = Legacy NP @@ -8038,7 +8796,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FISTTP PrefixType = Legacy NP @@ -8048,7 +8807,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Mem Sz16 |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.FNSTSW PrefixType = Legacy NP @@ -8058,7 +8818,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit) |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -8070,7 +8831,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -8082,7 +8844,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -8094,7 +8857,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -8106,7 +8870,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 227u Opcode = Opcode.JECXZ PrefixType = Legacy NP @@ -8116,7 +8881,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 227u Opcode = Opcode.JRCXZ PrefixType = Legacy NP @@ -8126,7 +8892,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -8138,7 +8905,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -8150,7 +8918,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 229u Opcode = Opcode.IN PrefixType = Legacy NP @@ -8160,7 +8929,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -8172,7 +8942,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8; FixedReg(Register.AL, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -8184,7 +8955,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8; FixedReg(Register.AX, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 231u Opcode = Opcode.OUT PrefixType = Legacy NP @@ -8194,7 +8966,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Imm Sz8; FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.I Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -8206,7 +8979,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 232u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8216,7 +8990,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -8228,7 +9003,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 233u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8238,7 +9014,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -8250,7 +9027,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz16 |] OpEn = OpEn.S Mode64 = Mode64.Inv - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 234u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8260,7 +9038,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz32 |] OpEn = OpEn.S Mode64 = Mode64.Inv - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -8272,7 +9051,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Rel Sz8 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -8284,7 +9064,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AL, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -8296,7 +9077,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.AX, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 237u Opcode = Opcode.IN PrefixType = Legacy NP @@ -8306,7 +9088,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.EAX, Explicit); FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -8318,7 +9101,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AL, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -8330,7 +9114,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 239u Opcode = Opcode.OUT PrefixType = Legacy NP @@ -8340,7 +9125,8 @@ let (norOne: InstructionCore[][]) = Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 240(0xF0) { OpcodeByte = 240u @@ -8352,7 +9138,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -8364,7 +9151,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -8376,7 +9164,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 242u Opcode = Opcode.XACQUIRE PrefixType = Mandatory F2 @@ -8386,7 +9175,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -8398,7 +9188,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.XRELEASE PrefixType = Mandatory F3 @@ -8408,7 +9199,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -8420,7 +9212,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -8432,7 +9225,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -8444,7 +9238,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.IDIV PrefixType = Legacy NP @@ -8454,7 +9249,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -8464,7 +9260,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.MUL PrefixType = Legacy NP @@ -8474,7 +9271,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.NEG PrefixType = Legacy NP @@ -8484,7 +9282,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.NOT PrefixType = Legacy NP @@ -8494,7 +9293,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -8504,7 +9304,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -8516,7 +9317,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.DIV PrefixType = Legacy NP @@ -8526,7 +9328,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.DIV PrefixType = Legacy NP @@ -8536,7 +9339,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IDIV PrefixType = Legacy NP @@ -8546,7 +9350,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IDIV PrefixType = Legacy NP @@ -8556,7 +9361,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IDIV PrefixType = Legacy NP @@ -8566,7 +9372,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -8576,7 +9383,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -8586,7 +9394,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -8596,7 +9405,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.MUL PrefixType = Legacy NP @@ -8606,7 +9416,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.MUL PrefixType = Legacy NP @@ -8616,7 +9427,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.MUL PrefixType = Legacy NP @@ -8626,7 +9438,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NEG PrefixType = Legacy NP @@ -8636,7 +9449,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NEG PrefixType = Legacy NP @@ -8646,7 +9460,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NEG PrefixType = Legacy NP @@ -8656,7 +9471,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NOT PrefixType = Legacy NP @@ -8666,7 +9482,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NOT PrefixType = Legacy NP @@ -8676,7 +9493,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.NOT PrefixType = Legacy NP @@ -8686,7 +9504,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -8696,7 +9515,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -8706,7 +9526,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.TEST PrefixType = Legacy NP @@ -8716,7 +9537,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 248(0xF8) { OpcodeByte = 248u @@ -8728,7 +9550,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -8740,7 +9563,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -8752,7 +9576,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -8764,7 +9589,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -8776,7 +9602,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -8788,7 +9615,8 @@ let (norOne: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -8800,7 +9628,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 254u Opcode = Opcode.INC PrefixType = Legacy NP @@ -8810,7 +9639,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 255(0xFF) { OpcodeByte = 255u @@ -8822,7 +9652,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8832,7 +9663,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8842,7 +9674,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8852,7 +9685,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8862,7 +9696,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.CALL PrefixType = Legacy NP @@ -8872,7 +9707,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -8882,7 +9718,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -8892,7 +9729,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.DEC PrefixType = Legacy NP @@ -8902,7 +9740,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.INC PrefixType = Legacy NP @@ -8912,7 +9751,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.INC PrefixType = Legacy NP @@ -8922,7 +9762,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.INC PrefixType = Legacy NP @@ -8932,7 +9773,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8942,7 +9784,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8952,7 +9795,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8962,7 +9806,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8972,7 +9817,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8982,7 +9828,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.JMP PrefixType = Legacy NP @@ -8992,7 +9839,8 @@ let (norOne: InstructionCore[][]) = Operands = [| Far Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -9002,7 +9850,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -9012,7 +9861,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 255u Opcode = Opcode.PUSH PrefixType = Legacy NP @@ -9022,7 +9872,8 @@ let (norOne: InstructionCore[][]) = Operands = [| RM Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] |] @@ -9038,7 +9889,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.LTR PrefixType = Mandatory NP @@ -9048,7 +9900,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.SLDT PrefixType = Mandatory NP @@ -9058,7 +9911,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.STR PrefixType = Mandatory NP @@ -9068,7 +9922,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.VERR PrefixType = Mandatory NP @@ -9078,7 +9933,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.VERW PrefixType = Mandatory NP @@ -9088,7 +9944,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -9100,7 +9957,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9110,7 +9968,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.INVLPG PrefixType = Mandatory NP @@ -9120,7 +9979,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.LGDT PrefixType = Mandatory NP @@ -9130,7 +9990,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.LIDT PrefixType = Mandatory NP @@ -9140,7 +10001,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.LGDT PrefixType = Mandatory NP @@ -9150,7 +10012,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.LIDT PrefixType = Mandatory NP @@ -9160,7 +10023,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.LMSW PrefixType = Mandatory NP @@ -9170,7 +10034,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.MONITOR PrefixType = Mandatory NP @@ -9180,7 +10045,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.MWAIT PrefixType = Mandatory NP @@ -9190,7 +10056,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9200,7 +10067,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -9210,7 +10078,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.RDPKRU PrefixType = Mandatory NP @@ -9220,7 +10089,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.RDTSCP PrefixType = Mandatory NP @@ -9230,7 +10100,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.RSTORSSP PrefixType = Mandatory F3 @@ -9240,7 +10111,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SAVEPREVSSP PrefixType = Mandatory F3 @@ -9250,7 +10122,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9260,7 +10133,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SETSSBSY PrefixType = Mandatory F3 @@ -9270,7 +10144,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SGDT PrefixType = Mandatory NP @@ -9280,7 +10155,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SIDT PrefixType = Mandatory NP @@ -9290,7 +10166,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SMSW PrefixType = Mandatory NP @@ -9300,7 +10177,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SMSW PrefixType = Mandatory NP @@ -9310,7 +10188,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RMdiff(Sz32, Sz16) |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SMSW PrefixType = Mandatory NP @@ -9320,7 +10199,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RMdiff(Sz64, Sz16) |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.STAC PrefixType = Mandatory NP @@ -9330,7 +10210,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9340,7 +10221,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.SWAPGS PrefixType = Mandatory NP @@ -9350,7 +10232,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9360,7 +10243,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9370,7 +10254,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9380,7 +10265,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9390,7 +10276,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.WRPKRU PrefixType = Mandatory NP @@ -9400,7 +10287,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.XEND PrefixType = Mandatory NP @@ -9410,7 +10298,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.XGETBV PrefixType = Mandatory NP @@ -9420,7 +10309,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -9430,7 +10320,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.XSETBV PrefixType = Mandatory NP @@ -9440,7 +10331,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -9450,7 +10342,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.XTEST PrefixType = Mandatory NP @@ -9460,7 +10353,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -9472,7 +10366,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 2u Opcode = Opcode.LAR PrefixType = Legacy NP @@ -9482,7 +10377,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 2u Opcode = Opcode.LAR PrefixType = Mandatory NP @@ -9492,7 +10388,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RMdiff(Sz64, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -9504,7 +10401,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.LSL PrefixType = Legacy NP @@ -9514,7 +10412,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.LSL PrefixType = Mandatory NP @@ -9524,7 +10423,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 4(0x04) |] @@ -9538,7 +10438,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -9550,7 +10451,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -9562,7 +10464,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 7u Opcode = Opcode.SYSRET PrefixType = Mandatory NP @@ -9572,7 +10475,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -9584,7 +10488,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -9596,7 +10501,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -9606,7 +10512,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 10(0x0A) |] @@ -9620,7 +10527,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 12(0x0C) |] @@ -9634,7 +10542,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 13u Opcode = Opcode.PREFETCHWT1 PrefixType = Mandatory NP @@ -9644,7 +10553,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 14(0x0E) |] @@ -9658,9 +10568,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.MOVSD PrefixType = Mandatory F2 @@ -9668,9 +10579,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9678,9 +10590,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9688,9 +10601,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 @@ -9698,9 +10612,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.MOVUPS PrefixType = Mandatory NP @@ -9708,9 +10623,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -9720,9 +10636,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.MOVSS PrefixType = Mandatory F3 @@ -9730,9 +10647,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.MOVUPD PrefixType = Mandatory P66 @@ -9740,9 +10658,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.MOVUPS PrefixType = Mandatory NP @@ -9750,9 +10669,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -9762,9 +10682,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.MOVHLPS PrefixType = Mandatory NP @@ -9774,7 +10695,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.MOVLPD PrefixType = Mandatory P66 @@ -9782,9 +10704,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.MOVLPS PrefixType = Mandatory NP @@ -9792,9 +10715,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.MOVSLDUP PrefixType = Mandatory F3 @@ -9802,9 +10726,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -9814,9 +10739,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 19u Opcode = Opcode.MOVLPS PrefixType = Mandatory NP @@ -9824,9 +10750,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -9836,9 +10763,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 20u Opcode = Opcode.UNPCKLPS PrefixType = Mandatory NP @@ -9846,9 +10774,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -9858,9 +10787,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.UNPCKHPS PrefixType = Mandatory NP @@ -9868,9 +10798,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -9880,9 +10811,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.MOVHPS PrefixType = Mandatory NP @@ -9890,9 +10822,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.MOVLHPS PrefixType = Mandatory NP @@ -9902,7 +10835,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.MOVSHDUP PrefixType = Mandatory F3 @@ -9910,9 +10844,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -9922,9 +10857,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 23u Opcode = Opcode.MOVHPS PrefixType = Mandatory NP @@ -9932,9 +10868,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -9946,7 +10883,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.PREFETCHT1 PrefixType = Mandatory NP @@ -9956,7 +10894,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.PREFETCHT2 PrefixType = Mandatory NP @@ -9966,7 +10905,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.PREFETCHNTA PrefixType = Mandatory NP @@ -9976,7 +10916,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9986,7 +10927,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -9996,7 +10938,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } |] [| // index 25(0x19) |] @@ -10010,7 +10953,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDCL PrefixType = Mandatory F3 @@ -10020,7 +10964,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDCU PrefixType = Mandatory F2 @@ -10030,7 +10975,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDCU PrefixType = Mandatory F2 @@ -10040,7 +10986,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDLDX PrefixType = Mandatory NP @@ -10050,7 +10997,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; Unknown "MIB" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10060,7 +11008,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; BM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 26u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10070,7 +11019,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; BM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -10082,7 +11032,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDCN PrefixType = Mandatory F2 @@ -10092,7 +11043,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDMK PrefixType = Mandatory F3 @@ -10102,7 +11054,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDMK PrefixType = Mandatory F3 @@ -10112,7 +11065,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BndReg; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10122,7 +11076,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BM Sz64; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDMOV PrefixType = Mandatory P66 @@ -10132,7 +11087,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| BM Sz128; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 27u Opcode = Opcode.BNDSTX PrefixType = Mandatory NP @@ -10142,7 +11098,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "MIB"; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 28(0x1C) { OpcodeByte = 28u @@ -10154,7 +11111,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 29(0x1D) |] @@ -10168,7 +11126,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 30u Opcode = Opcode.ENDBR64 PrefixType = Mandatory F3 @@ -10178,7 +11137,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 30u Opcode = Opcode.RDSSPD PrefixType = Mandatory F3 @@ -10188,7 +11148,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 30u Opcode = Opcode.RDSSPQ PrefixType = Mandatory F3 @@ -10198,7 +11159,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -10210,7 +11172,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 31u Opcode = Opcode.NOP PrefixType = Legacy NP @@ -10220,7 +11183,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -10232,7 +11196,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "CR0–CR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 32u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10242,7 +11207,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Unknown "CR0–CR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 32u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10252,7 +11218,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Unknown "CR8" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -10264,7 +11231,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "DR0–DR7" |] OpEn = OpEn.MR Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 33u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10274,7 +11242,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Unknown "DR0–DR7" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -10286,7 +11255,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 34u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10296,7 +11266,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 34u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10306,7 +11277,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "CR8"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -10318,7 +11290,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 35u Opcode = Opcode.MOV PrefixType = Mandatory NP @@ -10328,7 +11301,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 36(0x24) |] @@ -10346,9 +11320,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.MOVAPS PrefixType = Mandatory NP @@ -10356,9 +11331,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -10368,9 +11344,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.MOVAPS PrefixType = Mandatory NP @@ -10378,9 +11355,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -10392,7 +11370,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.CVTPI2PS PrefixType = Mandatory NP @@ -10402,7 +11381,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SD PrefixType = Mandatory F2 @@ -10410,9 +11390,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SD PrefixType = Mandatory F2 @@ -10420,9 +11401,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 @@ -10430,9 +11412,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.CVTSI2SS PrefixType = Mandatory F3 @@ -10440,9 +11423,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -10452,9 +11436,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.MOVNTPS PrefixType = Mandatory NP @@ -10462,9 +11447,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -10476,7 +11462,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.CVTTPS2PI PrefixType = Mandatory NP @@ -10486,7 +11473,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.CVTTSD2SI PrefixType = Mandatory F2 @@ -10494,9 +11482,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.CVTTSD2SI PrefixType = Mandatory F2 @@ -10504,9 +11493,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 @@ -10514,9 +11504,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.CVTTSS2SI PrefixType = Mandatory F3 @@ -10524,9 +11515,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -10538,7 +11530,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.CVTPS2PI PrefixType = Mandatory NP @@ -10548,7 +11541,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.CVTSD2SI PrefixType = Mandatory F2 @@ -10556,9 +11550,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.CVTSD2SI PrefixType = Mandatory F2 @@ -10566,9 +11561,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 @@ -10576,9 +11572,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.CVTSS2SI PrefixType = Mandatory F3 @@ -10586,9 +11583,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -10598,9 +11596,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 46u Opcode = Opcode.UCOMISS PrefixType = Mandatory NP @@ -10608,9 +11607,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -10620,9 +11620,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 47u Opcode = Opcode.COMISS PrefixType = Mandatory NP @@ -10630,9 +11631,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 48(0x30) { OpcodeByte = 48u @@ -10644,7 +11646,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -10656,7 +11659,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -10668,7 +11672,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -10680,7 +11685,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -10692,7 +11698,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -10704,7 +11711,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 53u Opcode = Opcode.SYSEXIT PrefixType = Mandatory NP @@ -10714,7 +11722,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 54(0x36) |] @@ -10728,7 +11737,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10738,7 +11748,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10748,7 +11759,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10758,7 +11770,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10768,7 +11781,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10778,7 +11792,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10788,7 +11803,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10798,7 +11814,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.None Mode64 = Mode64.None - Compat = CompatLegMode.None } + Compat = CompatLegMode.None + TupleType = TupleType.NA } |] [| // index 56(0x38) |] @@ -10826,7 +11843,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 64u Opcode = Opcode.CMOVO PrefixType = Legacy NP @@ -10836,7 +11854,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 64u Opcode = Opcode.CMOVO PrefixType = Mandatory NP @@ -10846,7 +11865,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -10858,7 +11878,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.CMOVNO PrefixType = Legacy NP @@ -10868,7 +11889,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.CMOVNO PrefixType = Mandatory NP @@ -10878,7 +11900,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -10890,7 +11913,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.CMOVB PrefixType = Legacy NP @@ -10900,7 +11924,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.CMOVB PrefixType = Mandatory NP @@ -10910,7 +11935,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.CMOVC PrefixType = Legacy NP @@ -10920,7 +11946,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.CMOVC PrefixType = Legacy NP @@ -10930,7 +11957,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.CMOVC PrefixType = Mandatory NP @@ -10940,7 +11968,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -10950,7 +11979,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -10960,7 +11990,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -10970,7 +12001,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -10982,7 +12014,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.CMOVAE PrefixType = Legacy NP @@ -10992,7 +12025,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.CMOVAE PrefixType = Mandatory NP @@ -11002,7 +12036,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11012,7 +12047,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11022,7 +12058,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11032,7 +12069,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.CMOVNC PrefixType = Legacy NP @@ -11042,7 +12080,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.CMOVNC PrefixType = Legacy NP @@ -11052,7 +12091,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 67u Opcode = Opcode.CMOVNC PrefixType = Mandatory NP @@ -11062,7 +12102,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -11074,7 +12115,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11084,7 +12126,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11094,7 +12137,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.CMOVZ PrefixType = Legacy NP @@ -11104,7 +12148,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.CMOVZ PrefixType = Legacy NP @@ -11114,7 +12159,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.CMOVZ PrefixType = Mandatory NP @@ -11124,7 +12170,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -11136,7 +12183,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11146,7 +12194,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11156,7 +12205,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ PrefixType = Legacy NP @@ -11166,7 +12216,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ PrefixType = Legacy NP @@ -11176,7 +12227,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.CMOVNZ PrefixType = Mandatory NP @@ -11186,7 +12238,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -11198,7 +12251,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.CMOVBE PrefixType = Legacy NP @@ -11208,7 +12262,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.CMOVBE PrefixType = Mandatory NP @@ -11218,7 +12273,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11228,7 +12284,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11238,7 +12295,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11248,7 +12306,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -11260,7 +12319,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.CMOVA PrefixType = Legacy NP @@ -11270,7 +12330,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.CMOVA PrefixType = Mandatory NP @@ -11280,7 +12341,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11290,7 +12352,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11300,7 +12363,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11310,7 +12374,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 72(0x48) { OpcodeByte = 72u @@ -11322,7 +12387,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 72u Opcode = Opcode.CMOVS PrefixType = Legacy NP @@ -11332,7 +12398,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 72u Opcode = Opcode.CMOVS PrefixType = Mandatory NP @@ -11342,7 +12409,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 73(0x49) { OpcodeByte = 73u @@ -11354,7 +12422,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.CMOVNS PrefixType = Legacy NP @@ -11364,7 +12433,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.CMOVNS PrefixType = Mandatory NP @@ -11374,7 +12444,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 74(0x4A) { OpcodeByte = 74u @@ -11386,7 +12457,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.CMOVP PrefixType = Legacy NP @@ -11396,7 +12468,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.CMOVP PrefixType = Mandatory NP @@ -11406,7 +12479,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11416,7 +12490,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11426,7 +12501,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11436,7 +12512,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -11448,7 +12525,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.CMOVNP PrefixType = Legacy NP @@ -11458,7 +12536,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.CMOVNP PrefixType = Mandatory NP @@ -11468,7 +12547,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11478,7 +12558,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11488,7 +12569,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11498,7 +12580,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 76(0x4C) { OpcodeByte = 76u @@ -11510,7 +12593,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.CMOVL PrefixType = Legacy NP @@ -11520,7 +12604,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.CMOVL PrefixType = Mandatory NP @@ -11530,7 +12615,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11540,7 +12626,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11550,7 +12637,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11560,7 +12648,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 77(0x4D) { OpcodeByte = 77u @@ -11572,7 +12661,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.CMOVGE PrefixType = Legacy NP @@ -11582,7 +12672,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.CMOVGE PrefixType = Mandatory NP @@ -11592,7 +12683,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11602,7 +12694,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11612,7 +12705,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 77u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11622,7 +12716,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 78(0x4E) { OpcodeByte = 78u @@ -11634,7 +12729,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.CMOVLE PrefixType = Legacy NP @@ -11644,7 +12740,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.CMOVLE PrefixType = Mandatory NP @@ -11654,7 +12751,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11664,7 +12762,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11674,7 +12773,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 78u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11684,7 +12784,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 79(0x4F) { OpcodeByte = 79u @@ -11696,7 +12797,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.CMOVG PrefixType = Legacy NP @@ -11706,7 +12808,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.CMOVG PrefixType = Mandatory NP @@ -11716,7 +12819,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NA } + Compat = CompatLegMode.NA + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11726,7 +12830,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.InvalOP PrefixType = Legacy NP @@ -11736,7 +12841,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 79u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -11746,7 +12852,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 80(0x50) { OpcodeByte = 80u @@ -11758,7 +12865,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.MOVMSKPS PrefixType = Mandatory NP @@ -11768,7 +12876,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -11778,9 +12887,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.SQRTPS PrefixType = Mandatory NP @@ -11788,9 +12898,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.SQRTSD PrefixType = Mandatory F2 @@ -11798,9 +12909,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.SQRTSS PrefixType = Mandatory F3 @@ -11808,9 +12920,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -11822,7 +12935,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.RSQRTSS PrefixType = Mandatory F3 @@ -11832,7 +12946,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -11844,7 +12959,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.RCPSS PrefixType = Mandatory F3 @@ -11854,7 +12970,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -11864,9 +12981,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.ANDPS PrefixType = Mandatory NP @@ -11874,9 +12992,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -11886,9 +13005,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.ANDNPS PrefixType = Mandatory NP @@ -11896,9 +13016,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -11908,9 +13029,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.ORPS PrefixType = Mandatory NP @@ -11918,9 +13040,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -11930,9 +13053,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.XORPS PrefixType = Mandatory NP @@ -11940,9 +13064,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -11952,9 +13077,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.ADDPS PrefixType = Mandatory NP @@ -11962,9 +13088,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.ADDSD PrefixType = Mandatory F2 @@ -11972,9 +13099,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.ADDSS PrefixType = Mandatory F3 @@ -11982,9 +13110,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -11994,9 +13123,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.MULPS PrefixType = Mandatory NP @@ -12004,9 +13134,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.MULSD PrefixType = Mandatory F2 @@ -12014,9 +13145,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.MULSS PrefixType = Mandatory F3 @@ -12024,9 +13156,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -12036,9 +13169,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.CVTPS2PD PrefixType = Mandatory NP @@ -12046,9 +13180,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.CVTSD2SS PrefixType = Mandatory F2 @@ -12056,9 +13191,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.CVTSS2SD PrefixType = Mandatory F3 @@ -12066,9 +13202,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -12078,9 +13215,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.CVTPS2DQ PrefixType = Mandatory P66 @@ -12088,9 +13226,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.CVTTPS2DQ PrefixType = Mandatory F3 @@ -12098,9 +13237,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -12110,9 +13250,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.SUBPS PrefixType = Mandatory NP @@ -12120,9 +13261,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.SUBSD PrefixType = Mandatory F2 @@ -12130,9 +13272,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.SUBSS PrefixType = Mandatory F3 @@ -12140,9 +13283,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -12152,9 +13296,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.MINPS PrefixType = Mandatory NP @@ -12162,9 +13307,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.MINSD PrefixType = Mandatory F2 @@ -12172,9 +13318,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.MINSS PrefixType = Mandatory F3 @@ -12182,9 +13329,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -12194,9 +13342,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.DIVPS PrefixType = Mandatory NP @@ -12204,9 +13353,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.DIVSD PrefixType = Mandatory F2 @@ -12214,9 +13364,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.DIVSS PrefixType = Mandatory F3 @@ -12224,9 +13375,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -12236,9 +13388,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.MAXPS PrefixType = Mandatory NP @@ -12246,9 +13399,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.MAXSD PrefixType = Mandatory F2 @@ -12256,9 +13410,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.MAXSS PrefixType = Mandatory F3 @@ -12266,9 +13421,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -12278,9 +13434,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 96u Opcode = Opcode.PUNPCKLBW PrefixType = Mandatory P66 @@ -12288,9 +13445,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -12300,9 +13458,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 97u Opcode = Opcode.PUNPCKLWD PrefixType = Mandatory P66 @@ -12310,9 +13469,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -12322,9 +13482,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.PUNPCKLDQ PrefixType = Mandatory P66 @@ -12332,9 +13493,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -12344,9 +13506,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.PACKSSWB PrefixType = Mandatory P66 @@ -12354,9 +13517,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -12366,9 +13530,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 100u Opcode = Opcode.PCMPGTB PrefixType = Mandatory P66 @@ -12376,9 +13541,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -12388,9 +13554,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 101u Opcode = Opcode.PCMPGTW PrefixType = Mandatory P66 @@ -12398,9 +13565,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -12410,9 +13578,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 102u Opcode = Opcode.PCMPGTD PrefixType = Mandatory P66 @@ -12420,9 +13589,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -12432,9 +13602,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 103u Opcode = Opcode.PACKUSWB PrefixType = Mandatory P66 @@ -12442,9 +13613,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -12454,9 +13626,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 104u Opcode = Opcode.PUNPCKHBW PrefixType = Mandatory P66 @@ -12464,9 +13637,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -12476,9 +13650,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 105u Opcode = Opcode.PUNPCKHWD PrefixType = Mandatory P66 @@ -12486,9 +13661,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -12498,9 +13674,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 106u Opcode = Opcode.PUNPCKHDQ PrefixType = Mandatory P66 @@ -12508,9 +13685,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -12520,9 +13698,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 107u Opcode = Opcode.PACKSSDW PrefixType = Mandatory P66 @@ -12530,9 +13709,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -12542,9 +13722,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -12554,9 +13735,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -12566,9 +13748,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -12576,9 +13759,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.MOVD PrefixType = Mandatory P66 @@ -12586,9 +13770,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.MOVQ PrefixType = Mandatory P66 @@ -12596,9 +13781,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -12608,9 +13794,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 @@ -12618,9 +13805,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -12628,9 +13816,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -12640,9 +13829,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.PSHUFHW PrefixType = Mandatory F3 @@ -12650,9 +13840,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.PSHUFLW PrefixType = Mandatory F2 @@ -12660,9 +13851,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.PSHUFW PrefixType = Mandatory NP @@ -12672,7 +13864,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -12682,9 +13875,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.PSLLW PrefixType = Mandatory P66 @@ -12692,9 +13886,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.PSRAW PrefixType = Mandatory NP @@ -12702,9 +13897,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.PSRAW PrefixType = Mandatory P66 @@ -12712,9 +13908,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.PSRLW PrefixType = Mandatory NP @@ -12722,9 +13919,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.PSRLW PrefixType = Mandatory P66 @@ -12732,9 +13930,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -12744,9 +13943,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.PSLLD PrefixType = Mandatory P66 @@ -12754,9 +13954,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.PSRAD PrefixType = Mandatory NP @@ -12764,9 +13965,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.PSRAD PrefixType = Mandatory P66 @@ -12774,9 +13976,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.PSRLD PrefixType = Mandatory NP @@ -12784,9 +13987,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.PSRLD PrefixType = Mandatory P66 @@ -12794,9 +13998,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -12806,9 +14011,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.PSLLQ PrefixType = Mandatory NP @@ -12816,9 +14022,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 @@ -12826,9 +14033,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.PSRLDQ PrefixType = Mandatory P66 @@ -12836,9 +14044,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.PSRLQ PrefixType = Mandatory NP @@ -12846,9 +14055,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| MMXReg; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 @@ -12856,9 +14066,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -12868,9 +14079,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 116u Opcode = Opcode.PCMPEQB PrefixType = Mandatory P66 @@ -12878,9 +14090,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -12890,9 +14103,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 117u Opcode = Opcode.PCMPEQW PrefixType = Mandatory P66 @@ -12900,9 +14114,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -12912,9 +14127,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 118u Opcode = Opcode.PCMPEQD PrefixType = Mandatory P66 @@ -12922,9 +14138,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -12936,7 +14153,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 120(0x78) |] @@ -12956,7 +14174,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 124u Opcode = Opcode.HADDPS PrefixType = Mandatory F2 @@ -12966,7 +14185,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -12978,7 +14198,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 125u Opcode = Opcode.HSUBPS PrefixType = Mandatory F2 @@ -12988,7 +14209,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -12998,9 +14220,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; MMXReg |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -13008,9 +14231,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; MMXReg |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.MOVD PrefixType = Mandatory P66 @@ -13018,9 +14242,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory P66 @@ -13028,9 +14253,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.MOVQ PrefixType = Mandatory F3 @@ -13038,9 +14264,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -13050,9 +14277,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.MOVDQU PrefixType = Mandatory F3 @@ -13060,9 +14288,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.MOVQ PrefixType = Mandatory NP @@ -13070,9 +14299,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MM Sz64; MMXReg |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 128(0x80) { OpcodeByte = 128u @@ -13084,7 +14314,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 128u Opcode = Opcode.JO PrefixType = Mandatory NP @@ -13094,7 +14325,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 129(0x81) { OpcodeByte = 129u @@ -13106,7 +14338,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 129u Opcode = Opcode.JNO PrefixType = Mandatory NP @@ -13116,7 +14349,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 130(0x82) { OpcodeByte = 130u @@ -13128,7 +14362,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.JB PrefixType = Mandatory NP @@ -13138,7 +14373,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.JB PrefixType = Mandatory NP @@ -13148,7 +14384,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.JB PrefixType = Mandatory NP @@ -13158,7 +14395,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.JB PrefixType = Mandatory NP @@ -13168,7 +14406,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.JB PrefixType = Mandatory NP @@ -13178,7 +14417,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 131(0x83) { OpcodeByte = 131u @@ -13190,7 +14430,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.JAE PrefixType = Mandatory NP @@ -13200,7 +14441,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.JAE PrefixType = Mandatory NP @@ -13210,7 +14452,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.JAE PrefixType = Mandatory NP @@ -13220,7 +14463,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.JAE PrefixType = Mandatory NP @@ -13230,7 +14474,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 131u Opcode = Opcode.JAE PrefixType = Mandatory NP @@ -13240,7 +14485,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 132(0x84) { OpcodeByte = 132u @@ -13252,7 +14498,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 132u Opcode = Opcode.JZ PrefixType = Mandatory NP @@ -13262,7 +14509,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 132u Opcode = Opcode.JZ PrefixType = Mandatory NP @@ -13272,7 +14520,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 132u Opcode = Opcode.JZ PrefixType = Mandatory NP @@ -13282,7 +14531,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 132u Opcode = Opcode.JZ PrefixType = Mandatory NP @@ -13292,7 +14542,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 132u Opcode = Opcode.JZ PrefixType = Mandatory NP @@ -13302,7 +14553,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 133(0x85) { OpcodeByte = 133u @@ -13314,7 +14566,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 133u Opcode = Opcode.JNZ PrefixType = Mandatory NP @@ -13324,7 +14577,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 133u Opcode = Opcode.JNZ PrefixType = Mandatory NP @@ -13334,7 +14588,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 133u Opcode = Opcode.JNZ PrefixType = Mandatory NP @@ -13344,7 +14599,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 134(0x86) { OpcodeByte = 134u @@ -13356,7 +14612,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 134u Opcode = Opcode.JBE PrefixType = Mandatory NP @@ -13366,7 +14623,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 134u Opcode = Opcode.JBE PrefixType = Mandatory NP @@ -13376,7 +14634,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 134u Opcode = Opcode.JBE PrefixType = Mandatory NP @@ -13386,7 +14645,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 135(0x87) { OpcodeByte = 135u @@ -13398,7 +14658,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.JNBE PrefixType = Mandatory NP @@ -13408,7 +14669,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.JNBE PrefixType = Mandatory NP @@ -13418,7 +14680,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 135u Opcode = Opcode.JNBE PrefixType = Mandatory NP @@ -13428,7 +14691,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 136(0x88) { OpcodeByte = 136u @@ -13440,7 +14704,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 136u Opcode = Opcode.JS PrefixType = Mandatory NP @@ -13450,7 +14715,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 137(0x89) { OpcodeByte = 137u @@ -13462,7 +14728,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 137u Opcode = Opcode.JNS PrefixType = Mandatory NP @@ -13472,7 +14739,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 138(0x8A) { OpcodeByte = 138u @@ -13484,7 +14752,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 138u Opcode = Opcode.JP PrefixType = Mandatory NP @@ -13494,7 +14763,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 138u Opcode = Opcode.JP PrefixType = Mandatory NP @@ -13504,7 +14774,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 138u Opcode = Opcode.JP PrefixType = Mandatory NP @@ -13514,7 +14785,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 139(0x8B) { OpcodeByte = 139u @@ -13526,7 +14798,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 139u Opcode = Opcode.JNP PrefixType = Mandatory NP @@ -13536,7 +14809,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 139u Opcode = Opcode.JNP PrefixType = Mandatory NP @@ -13546,7 +14820,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 139u Opcode = Opcode.JNP PrefixType = Mandatory NP @@ -13556,7 +14831,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 140(0x8C) { OpcodeByte = 140u @@ -13568,7 +14844,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.JL PrefixType = Mandatory NP @@ -13578,7 +14855,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.JL PrefixType = Mandatory NP @@ -13588,7 +14866,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.JL PrefixType = Mandatory NP @@ -13598,7 +14877,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 141(0x8D) { OpcodeByte = 141u @@ -13610,7 +14890,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 141u Opcode = Opcode.JGE PrefixType = Mandatory NP @@ -13620,7 +14901,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 141u Opcode = Opcode.JGE PrefixType = Mandatory NP @@ -13630,7 +14912,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 141u Opcode = Opcode.JGE PrefixType = Mandatory NP @@ -13640,7 +14923,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 142(0x8E) { OpcodeByte = 142u @@ -13652,7 +14936,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.JNG PrefixType = Mandatory NP @@ -13662,7 +14947,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.JNG PrefixType = Mandatory NP @@ -13672,7 +14958,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.JNG PrefixType = Mandatory NP @@ -13682,7 +14969,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 143(0x8F) { OpcodeByte = 143u @@ -13694,7 +14982,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 143u Opcode = Opcode.JNLE PrefixType = Mandatory NP @@ -13704,7 +14993,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 143u Opcode = Opcode.JNLE PrefixType = Mandatory NP @@ -13714,7 +15004,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz16 |] OpEn = OpEn.D Mode64 = Mode64.NS - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 143u Opcode = Opcode.JNLE PrefixType = Mandatory NP @@ -13724,7 +15015,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Rel Sz32 |] OpEn = OpEn.D Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 144(0x90) { OpcodeByte = 144u @@ -13736,7 +15028,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -13748,7 +15041,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -13760,7 +15054,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13770,7 +15065,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13780,7 +15076,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -13792,7 +15089,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.SETNB PrefixType = Mandatory NP @@ -13802,7 +15100,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13812,7 +15111,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 148(0x94) { OpcodeByte = 148u @@ -13824,7 +15124,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 148u Opcode = Opcode.SETZ PrefixType = Mandatory NP @@ -13834,7 +15135,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 149(0x95) { OpcodeByte = 149u @@ -13846,7 +15148,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 149u Opcode = Opcode.SETNZ PrefixType = Mandatory NP @@ -13856,7 +15159,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 150(0x96) { OpcodeByte = 150u @@ -13868,7 +15172,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13878,7 +15183,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -13890,7 +15196,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13900,7 +15207,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -13912,7 +15220,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -13924,7 +15233,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -13936,7 +15246,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 154u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13946,7 +15257,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -13958,7 +15270,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 155u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13968,7 +15281,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -13980,7 +15294,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -13990,7 +15305,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -14002,7 +15318,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 157u Opcode = Opcode.SETNL PrefixType = Mandatory NP @@ -14012,7 +15329,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -14024,7 +15342,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 158u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14034,7 +15353,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -14046,7 +15366,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 159u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14056,7 +15377,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 160(0xA0) { OpcodeByte = 160u @@ -14068,7 +15390,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 161(0xA1) { OpcodeByte = 161u @@ -14080,7 +15403,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 161u Opcode = Opcode.POP PrefixType = Mandatory NP @@ -14090,7 +15414,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 161u Opcode = Opcode.POP PrefixType = Mandatory NP @@ -14100,7 +15425,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.FS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 162(0xA2) { OpcodeByte = 162u @@ -14112,7 +15438,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 163(0xA3) { OpcodeByte = 163u @@ -14124,7 +15451,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 163u Opcode = Opcode.BT PrefixType = Mandatory NP @@ -14134,7 +15462,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 163u Opcode = Opcode.BT PrefixType = Mandatory NP @@ -14144,7 +15473,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 164(0xA4) { OpcodeByte = 164u @@ -14156,7 +15486,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 164u Opcode = Opcode.SHLD PrefixType = Mandatory NP @@ -14166,7 +15497,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 164u Opcode = Opcode.SHLD PrefixType = Mandatory NP @@ -14176,7 +15508,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 165(0xA5) { OpcodeByte = 165u @@ -14188,7 +15521,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.SHLD PrefixType = Mandatory NP @@ -14198,7 +15532,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.SHLD PrefixType = Mandatory NP @@ -14208,7 +15543,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 166(0xA6) |] @@ -14224,7 +15560,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -14236,7 +15573,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 169u Opcode = Opcode.POP PrefixType = Mandatory NP @@ -14246,7 +15584,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 169u Opcode = Opcode.POP PrefixType = Mandatory NP @@ -14256,7 +15595,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| FixedReg(Register.GS, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -14268,7 +15608,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -14280,7 +15621,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.BTS PrefixType = Mandatory NP @@ -14290,7 +15632,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.BTS PrefixType = Mandatory NP @@ -14300,7 +15643,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -14312,7 +15656,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.SHRD PrefixType = Mandatory NP @@ -14322,7 +15667,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.SHRD PrefixType = Mandatory NP @@ -14332,7 +15678,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -14344,7 +15691,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.SHRD PrefixType = Mandatory NP @@ -14354,7 +15702,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.SHRD PrefixType = Mandatory NP @@ -14364,7 +15713,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -14376,7 +15726,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.CLFLUSHOPT PrefixType = Mandatory NP @@ -14386,7 +15737,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.CLRSSBSY PrefixType = Mandatory F3 @@ -14396,7 +15748,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.CLWB PrefixType = Mandatory P66 @@ -14406,7 +15759,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz8 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.FXRSTOR PrefixType = Mandatory NP @@ -14416,7 +15770,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.FXRSTOR64 PrefixType = Mandatory NP @@ -14426,7 +15781,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.FXSAVE PrefixType = Mandatory NP @@ -14436,7 +15792,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.FXSAVE64 PrefixType = Mandatory NP @@ -14446,7 +15803,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.INCSSPD PrefixType = Mandatory F3 @@ -14456,7 +15814,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.INCSSPQ PrefixType = Mandatory F3 @@ -14466,7 +15825,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.LDMXCSR PrefixType = Mandatory NP @@ -14476,7 +15836,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.LFENCE PrefixType = Mandatory NP @@ -14486,7 +15847,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.MFENCE PrefixType = Mandatory NP @@ -14496,7 +15858,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14506,7 +15869,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "R64/M64" |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14516,7 +15880,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 @@ -14526,7 +15891,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.RDFSBASE PrefixType = Mandatory F3 @@ -14536,7 +15902,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 @@ -14546,7 +15913,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.RDGSBASE PrefixType = Mandatory F3 @@ -14556,7 +15924,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.SFENCE PrefixType = Mandatory NP @@ -14566,7 +15935,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.STMXCSR PrefixType = Mandatory NP @@ -14576,7 +15946,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -14586,7 +15957,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -14596,7 +15968,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Unknown "R16/R32/R64" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory F2 @@ -14606,7 +15979,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 @@ -14616,7 +15990,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.WRFSBASE PrefixType = Mandatory F3 @@ -14626,7 +16001,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 @@ -14636,7 +16012,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.WRGSBASE PrefixType = Mandatory F3 @@ -14646,7 +16023,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.XRSTOR PrefixType = Mandatory NP @@ -14656,7 +16034,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14666,7 +16045,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.XSAVE PrefixType = Mandatory NP @@ -14676,7 +16056,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14686,7 +16067,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.XSAVEOPT PrefixType = Mandatory NP @@ -14696,7 +16078,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -14706,7 +16089,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -14718,7 +16102,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.IMUL PrefixType = Legacy NP @@ -14728,7 +16113,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.IMUL PrefixType = Mandatory NP @@ -14738,7 +16124,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 176(0xB0) { OpcodeByte = 176u @@ -14750,7 +16137,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 177(0xB1) { OpcodeByte = 177u @@ -14762,7 +16150,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 177u Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP @@ -14772,7 +16161,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 177u Opcode = Opcode.CMPXCHG PrefixType = Mandatory NP @@ -14782,7 +16172,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 178(0xB2) { OpcodeByte = 178u @@ -14794,7 +16185,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 178u Opcode = Opcode.LSS PrefixType = Mandatory NP @@ -14804,7 +16196,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 178u Opcode = Opcode.LSS PrefixType = Mandatory NP @@ -14814,7 +16207,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 179(0xB3) { OpcodeByte = 179u @@ -14826,7 +16220,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 179u Opcode = Opcode.BTR PrefixType = Mandatory NP @@ -14836,7 +16231,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 179u Opcode = Opcode.BTR PrefixType = Mandatory NP @@ -14846,7 +16242,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 180(0xB4) { OpcodeByte = 180u @@ -14858,7 +16255,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 180u Opcode = Opcode.LFS PrefixType = Mandatory NP @@ -14868,7 +16266,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 180u Opcode = Opcode.LFS PrefixType = Mandatory NP @@ -14878,7 +16277,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -14890,7 +16290,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; Far Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 181u Opcode = Opcode.LGS PrefixType = Mandatory NP @@ -14900,7 +16301,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Far Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 181u Opcode = Opcode.LGS PrefixType = Mandatory NP @@ -14910,7 +16312,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Far Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -14922,7 +16325,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 182u Opcode = Opcode.MOVZX PrefixType = Legacy NP @@ -14932,7 +16336,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 182u Opcode = Opcode.MOVZX PrefixType = Mandatory NP @@ -14942,7 +16347,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -14954,7 +16360,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 183u Opcode = Opcode.MOVZX PrefixType = Mandatory NP @@ -14964,7 +16371,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -14976,7 +16384,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.POPCNT PrefixType = Mandatory F3 @@ -14986,7 +16395,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.POPCNT PrefixType = Mandatory F3 @@ -14996,7 +16406,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -15008,7 +16419,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -15020,7 +16432,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BT PrefixType = Mandatory NP @@ -15030,7 +16443,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BT PrefixType = Mandatory NP @@ -15040,7 +16454,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTC PrefixType = Mandatory NP @@ -15050,7 +16465,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTC PrefixType = Mandatory NP @@ -15060,7 +16476,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTC PrefixType = Mandatory NP @@ -15070,7 +16487,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTR PrefixType = Mandatory NP @@ -15080,7 +16498,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTR PrefixType = Mandatory NP @@ -15090,7 +16509,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTR PrefixType = Mandatory NP @@ -15100,7 +16520,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTS PrefixType = Mandatory NP @@ -15110,7 +16531,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTS PrefixType = Mandatory NP @@ -15120,7 +16542,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.BTS PrefixType = Mandatory NP @@ -15130,7 +16553,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -15142,7 +16566,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 187u Opcode = Opcode.BTC PrefixType = Mandatory NP @@ -15152,7 +16577,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 187u Opcode = Opcode.BTC PrefixType = Mandatory NP @@ -15162,7 +16588,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -15174,7 +16601,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.BSF PrefixType = Legacy NP @@ -15184,7 +16612,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.BSF PrefixType = Mandatory NP @@ -15194,7 +16623,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.TZCNT PrefixType = Mandatory F3 @@ -15202,9 +16632,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz16; RM Sz16 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.TZCNT PrefixType = Mandatory F3 @@ -15212,9 +16643,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.TZCNT PrefixType = Mandatory F3 @@ -15222,9 +16654,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -15236,7 +16669,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.BSR PrefixType = Mandatory NP @@ -15246,7 +16680,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.BSR PrefixType = Mandatory NP @@ -15256,7 +16691,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.LZCNT PrefixType = Mandatory F3 @@ -15266,7 +16702,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.LZCNT PrefixType = Mandatory F3 @@ -15276,7 +16713,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.LZCNT PrefixType = Mandatory F3 @@ -15286,7 +16724,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -15298,7 +16737,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.MOVSX PrefixType = Legacy NP @@ -15308,7 +16748,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.MOVSX PrefixType = Mandatory NP @@ -15318,7 +16759,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -15330,7 +16772,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 191u Opcode = Opcode.MOVSX PrefixType = Mandatory NP @@ -15340,7 +16783,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 192(0xC0) { OpcodeByte = 192u @@ -15352,7 +16796,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz8; Reg Sz8 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 193(0xC1) { OpcodeByte = 193u @@ -15364,7 +16809,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.XADD PrefixType = Mandatory NP @@ -15374,7 +16820,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 193u Opcode = Opcode.XADD PrefixType = Mandatory NP @@ -15384,7 +16831,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| RM Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 194(0xC2) { OpcodeByte = 194u @@ -15394,9 +16842,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.CMPPS PrefixType = Mandatory NP @@ -15404,9 +16853,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.CMPSD PrefixType = Mandatory F2 @@ -15414,9 +16864,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.CMPSS PrefixType = Mandatory F3 @@ -15424,9 +16875,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 195(0xC3) { OpcodeByte = 195u @@ -15438,7 +16890,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 195u Opcode = Opcode.MOVNTI PrefixType = Mandatory NP @@ -15448,7 +16901,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 196(0xC4) { OpcodeByte = 196u @@ -15458,9 +16912,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 196u Opcode = Opcode.PINSRW PrefixType = Mandatory P66 @@ -15468,9 +16923,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -15480,9 +16936,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; MMXReg; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 197u Opcode = Opcode.PEXTRW PrefixType = Mandatory P66 @@ -15490,9 +16947,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -15502,9 +16960,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 198u Opcode = Opcode.SHUFPS PrefixType = Mandatory NP @@ -15512,9 +16971,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -15526,7 +16986,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.CMPXCHG16B PrefixType = Mandatory NP @@ -15536,7 +16997,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz128 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -15546,7 +17008,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.R Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -15556,7 +17019,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.R Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15566,7 +17030,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15576,7 +17041,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDRAND PrefixType = Mandatory NP @@ -15586,7 +17052,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15596,7 +17063,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz16 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15606,7 +17074,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.RDSEED PrefixType = Mandatory NP @@ -15616,7 +17085,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -15626,7 +17096,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XRSTORS PrefixType = Mandatory NP @@ -15636,7 +17107,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XRSTORS64 PrefixType = Mandatory NP @@ -15646,7 +17118,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XSAVEC PrefixType = Mandatory NP @@ -15656,7 +17129,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XSAVEC64 PrefixType = Mandatory NP @@ -15666,7 +17140,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XSAVES PrefixType = Mandatory NP @@ -15676,7 +17151,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 199u Opcode = Opcode.XSAVES64 PrefixType = Mandatory NP @@ -15686,7 +17162,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem SzUnknown |] OpEn = OpEn.M Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -15698,7 +17175,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 200u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15708,7 +17186,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 201(0xC9) { OpcodeByte = 201u @@ -15720,7 +17199,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 201u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15730,7 +17210,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 202(0xCA) { OpcodeByte = 202u @@ -15742,7 +17223,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 202u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15752,7 +17234,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -15764,7 +17247,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 203u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15774,7 +17258,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -15786,7 +17271,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 204u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15796,7 +17282,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -15808,7 +17295,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 205u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15818,7 +17306,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 206(0xCE) { OpcodeByte = 206u @@ -15830,7 +17319,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 206u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15840,7 +17330,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -15852,7 +17343,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 207u Opcode = Opcode.BSWAP PrefixType = Mandatory NP @@ -15862,7 +17354,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 208(0xD0) { OpcodeByte = 208u @@ -15874,7 +17367,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.ADDSUBPS PrefixType = Mandatory F2 @@ -15884,7 +17378,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 209(0xD1) { OpcodeByte = 209u @@ -15894,9 +17389,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.PSRLW PrefixType = Mandatory P66 @@ -15904,9 +17400,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -15916,9 +17413,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.PSRLD PrefixType = Mandatory P66 @@ -15926,9 +17424,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -15938,9 +17437,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.PSRLQ PrefixType = Mandatory P66 @@ -15948,9 +17448,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -15960,9 +17461,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 212u Opcode = Opcode.PADDQ PrefixType = Mandatory P66 @@ -15970,9 +17472,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -15982,9 +17485,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 213u Opcode = Opcode.PMULLW PrefixType = Mandatory P66 @@ -15992,9 +17496,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -16006,7 +17511,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 214u Opcode = Opcode.MOVQ PrefixType = Mandatory P66 @@ -16014,9 +17520,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 214u Opcode = Opcode.MOVQ2DQ PrefixType = Mandatory F3 @@ -16026,7 +17533,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 215(0xD7) { OpcodeByte = 215u @@ -16038,7 +17546,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 215u Opcode = Opcode.PMOVMSKB PrefixType = Mandatory P66 @@ -16048,7 +17557,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 216(0xD8) { OpcodeByte = 216u @@ -16058,9 +17568,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.PSUBUSB PrefixType = Mandatory P66 @@ -16068,9 +17579,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -16080,9 +17592,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.PSUBUSW PrefixType = Mandatory P66 @@ -16090,9 +17603,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -16102,9 +17616,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.PMINUB PrefixType = Mandatory P66 @@ -16112,9 +17627,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -16124,9 +17640,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.PAND PrefixType = Mandatory P66 @@ -16134,9 +17651,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -16146,9 +17664,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.PADDUSB PrefixType = Mandatory P66 @@ -16156,9 +17675,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -16168,9 +17688,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.PADDUSW PrefixType = Mandatory P66 @@ -16178,9 +17699,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -16190,9 +17712,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.PMAXUB PrefixType = Mandatory P66 @@ -16200,9 +17723,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -16212,9 +17736,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.PANDN PrefixType = Mandatory P66 @@ -16222,9 +17747,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -16234,9 +17760,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 224u Opcode = Opcode.PAVGB PrefixType = Mandatory P66 @@ -16244,9 +17771,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -16256,9 +17784,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 225u Opcode = Opcode.PSRAW PrefixType = Mandatory P66 @@ -16266,9 +17795,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -16278,9 +17808,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 226u Opcode = Opcode.PSRAD PrefixType = Mandatory P66 @@ -16288,9 +17819,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -16300,9 +17832,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 227u Opcode = Opcode.PAVGW PrefixType = Mandatory P66 @@ -16310,9 +17843,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -16322,9 +17856,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 228u Opcode = Opcode.PMULHUW PrefixType = Mandatory P66 @@ -16332,9 +17867,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -16344,9 +17880,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 229u Opcode = Opcode.PMULHW PrefixType = Mandatory P66 @@ -16354,9 +17891,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -16366,9 +17904,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.CVTPD2DQ PrefixType = Mandatory F2 @@ -16376,9 +17915,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.CVTTPD2DQ PrefixType = Mandatory P66 @@ -16386,9 +17926,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -16398,9 +17939,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 231u Opcode = Opcode.MOVNTQ PrefixType = Mandatory NP @@ -16410,7 +17952,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Mem Sz64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -16420,9 +17963,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 232u Opcode = Opcode.PSUBSB PrefixType = Mandatory P66 @@ -16430,9 +17974,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -16442,9 +17987,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 233u Opcode = Opcode.PSUBSW PrefixType = Mandatory P66 @@ -16452,9 +17998,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -16464,9 +18011,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 234u Opcode = Opcode.PMINSW PrefixType = Mandatory P66 @@ -16474,9 +18022,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -16486,9 +18035,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 235u Opcode = Opcode.POR PrefixType = Mandatory P66 @@ -16496,9 +18046,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -16508,9 +18059,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 236u Opcode = Opcode.PADDSB PrefixType = Mandatory P66 @@ -16518,9 +18070,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -16530,9 +18083,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 237u Opcode = Opcode.PADDSW PrefixType = Mandatory P66 @@ -16540,9 +18094,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -16552,9 +18107,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 238u Opcode = Opcode.PMAXSW PrefixType = Mandatory P66 @@ -16562,9 +18118,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -16574,9 +18131,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 239u Opcode = Opcode.PXOR PrefixType = Mandatory P66 @@ -16584,9 +18142,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 240(0xF0) { OpcodeByte = 240u @@ -16598,7 +18157,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -16608,9 +18168,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.PSLLW PrefixType = Mandatory P66 @@ -16618,9 +18179,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -16630,9 +18192,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 242u Opcode = Opcode.PSLLD PrefixType = Mandatory P66 @@ -16640,9 +18203,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -16652,9 +18216,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.PSLLQ PrefixType = Mandatory P66 @@ -16662,9 +18227,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -16674,9 +18240,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 244u Opcode = Opcode.PMULUDQ PrefixType = Mandatory P66 @@ -16684,9 +18251,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -16696,9 +18264,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.PMADDWD PrefixType = Mandatory P66 @@ -16706,9 +18275,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -16718,9 +18288,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.PSADBW PrefixType = Mandatory P66 @@ -16728,9 +18299,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -16742,7 +18314,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.MASKMOVQ PrefixType = Mandatory NP @@ -16752,7 +18325,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| MMXReg; MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 248(0xF8) { OpcodeByte = 248u @@ -16762,9 +18336,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 248u Opcode = Opcode.PSUBB PrefixType = Mandatory P66 @@ -16772,9 +18347,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -16784,9 +18360,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 249u Opcode = Opcode.PSUBW PrefixType = Mandatory P66 @@ -16794,9 +18371,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -16806,9 +18384,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 250u Opcode = Opcode.PSUBD PrefixType = Mandatory P66 @@ -16816,9 +18395,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -16828,9 +18408,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 251u Opcode = Opcode.PSUBQ PrefixType = Mandatory P66 @@ -16838,9 +18419,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -16850,9 +18432,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 252u Opcode = Opcode.PADDB PrefixType = Mandatory P66 @@ -16860,9 +18443,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -16872,9 +18456,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 253u Opcode = Opcode.PADDW PrefixType = Mandatory P66 @@ -16882,9 +18467,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -16894,9 +18480,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 254u Opcode = Opcode.PADDD PrefixType = Mandatory P66 @@ -16904,9 +18491,10 @@ let (norTwo: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 255(0xFF) { OpcodeByte = 255u @@ -16918,7 +18506,8 @@ let (norTwo: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] |] @@ -16932,9 +18521,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.PSHUFB PrefixType = Mandatory P66 @@ -16942,9 +18532,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -16956,7 +18547,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.PHADDW PrefixType = Mandatory P66 @@ -16966,7 +18558,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -16978,7 +18571,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 2u Opcode = Opcode.PHADDD PrefixType = Mandatory P66 @@ -16988,7 +18582,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -17000,7 +18595,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.PHADDSW PrefixType = Mandatory P66 @@ -17010,7 +18606,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -17020,9 +18617,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 4u Opcode = Opcode.PMADDUBSW PrefixType = Mandatory P66 @@ -17030,9 +18628,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -17044,7 +18643,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 5u Opcode = Opcode.PHSUBW PrefixType = Mandatory P66 @@ -17054,7 +18654,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -17066,7 +18667,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 6u Opcode = Opcode.PHSUBD PrefixType = Mandatory P66 @@ -17076,7 +18678,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -17088,7 +18691,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 7u Opcode = Opcode.PHSUBSW PrefixType = Mandatory P66 @@ -17098,7 +18702,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -17110,7 +18715,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 8u Opcode = Opcode.PSIGNB PrefixType = Mandatory P66 @@ -17120,7 +18726,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -17132,7 +18739,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.PSIGNW PrefixType = Mandatory P66 @@ -17142,7 +18750,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -17154,7 +18763,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| MMXReg; MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 10u Opcode = Opcode.PSIGND PrefixType = Mandatory P66 @@ -17164,7 +18774,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -17174,9 +18785,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 11u Opcode = Opcode.PMULHRSW PrefixType = Mandatory P66 @@ -17184,9 +18796,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 12(0x0C) |] @@ -17206,7 +18819,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 17(0x11) |] @@ -17224,7 +18838,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -17236,7 +18851,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 22(0x16) |] @@ -17250,7 +18866,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) |] @@ -17268,9 +18885,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 28u Opcode = Opcode.PABSB PrefixType = Mandatory P66 @@ -17278,9 +18896,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -17290,9 +18909,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 29u Opcode = Opcode.PABSW PrefixType = Mandatory P66 @@ -17300,9 +18920,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -17312,9 +18933,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 30u Opcode = Opcode.PABSD PrefixType = Mandatory P66 @@ -17322,9 +18944,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 31(0x1F) |] @@ -17336,9 +18959,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -17348,9 +18972,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -17360,9 +18985,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -17372,9 +18998,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -17384,9 +19011,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -17396,9 +19024,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 38(0x26) |] @@ -17412,9 +19041,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -17424,9 +19054,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -17436,9 +19067,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -17448,9 +19080,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 44(0x2C) |] @@ -17468,9 +19101,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -17480,9 +19114,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -17492,9 +19127,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -17504,9 +19140,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -17516,9 +19153,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -17528,9 +19166,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 54(0x36) |] @@ -17542,9 +19181,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -17554,9 +19194,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -17566,9 +19207,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -17578,9 +19220,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -17590,9 +19233,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -17602,9 +19246,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -17614,9 +19259,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -17626,9 +19272,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -17638,9 +19285,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -17650,9 +19298,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -17664,7 +19313,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) |] @@ -17804,7 +19454,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.NE - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 130u Opcode = Opcode.INVPCID PrefixType = Mandatory P66 @@ -17814,7 +19465,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 131(0x83) |] @@ -17964,7 +19616,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 201(0xC9) { OpcodeByte = 201u @@ -17976,7 +19629,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 202(0xCA) { OpcodeByte = 202u @@ -17988,7 +19642,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -18000,7 +19655,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Unknown "" |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -18012,7 +19668,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -18024,7 +19681,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 206(0xCE) |] @@ -18036,9 +19694,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 208(0xD0) |] @@ -18066,7 +19725,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18076,7 +19736,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18086,7 +19747,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Unknown "M384"; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18096,7 +19758,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz512; Unknown "" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 217(0xD9) |] @@ -18112,7 +19775,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -18122,9 +19786,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18132,9 +19797,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18142,9 +19808,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; FixedReg(Register.EAX, Implicit); Unknown "" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -18154,9 +19821,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Unknown "M384" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.AESENCLAST PrefixType = Mandatory P66 @@ -18164,9 +19832,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -18176,9 +19845,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18186,9 +19856,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -18198,9 +19869,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.AESDECLAST PrefixType = Mandatory P66 @@ -18208,9 +19880,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) |] @@ -18254,7 +19927,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.CRC32 PrefixType = Mandatory F2 @@ -18264,7 +19938,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18274,7 +19949,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz16; Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18284,7 +19960,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18294,7 +19971,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -18306,7 +19984,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.CRC32 PrefixType = Mandatory F2 @@ -18316,7 +19995,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.CRC32 PrefixType = Mandatory F2 @@ -18326,7 +20006,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18336,7 +20017,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz16; Reg Sz16 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18346,7 +20028,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.MOVBE PrefixType = Mandatory NP @@ -18356,7 +20039,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 242(0xF2) |] @@ -18374,7 +20058,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.WRUSSQ PrefixType = Mandatory P66 @@ -18384,7 +20069,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -18396,7 +20082,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.ADCX PrefixType = Mandatory P66 @@ -18406,7 +20093,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.ADOX PrefixType = Mandatory F3 @@ -18416,7 +20104,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.ADOX PrefixType = Mandatory F3 @@ -18426,7 +20115,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.WRSSD PrefixType = Mandatory NP @@ -18436,7 +20126,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32 |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.WRSSQ PrefixType = Mandatory NP @@ -18446,7 +20137,8 @@ let (norThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64 |] OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 247(0xF7) |] @@ -18458,9 +20150,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 248u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -18468,9 +20161,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Unknown "R32/R64"; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 248u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -18478,9 +20172,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R16/R32/R64"; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -18490,9 +20185,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 249u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -18500,9 +20196,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -18512,9 +20209,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Reg Sz32; Unknown ""; Unknown "" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -18524,9 +20222,10 @@ let (norThree38: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.NoModRM Operands = [| Reg Sz32; Unknown "R32" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 252(0xFC) |] @@ -18566,7 +20265,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -18578,7 +20278,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -18590,7 +20291,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -18602,7 +20304,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -18614,7 +20317,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -18626,7 +20330,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -18638,7 +20343,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -18648,9 +20354,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| MMXReg; MM Sz64; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 15u Opcode = Opcode.PALIGNR PrefixType = Mandatory P66 @@ -18658,9 +20365,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 16(0x10) |] @@ -18678,9 +20386,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -18690,9 +20399,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -18702,9 +20412,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.PEXTRQ PrefixType = Mandatory P66 @@ -18712,9 +20423,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -18724,9 +20436,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) |] @@ -18752,9 +20465,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -18764,9 +20478,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -18776,9 +20491,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 34u Opcode = Opcode.PINSRQ PrefixType = Mandatory P66 @@ -18786,9 +20502,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 35(0x23) |] @@ -18858,7 +20575,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -18870,7 +20588,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -18882,7 +20601,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 67(0x43) |] @@ -18894,9 +20614,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 69(0x45) |] @@ -18962,7 +20683,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -18974,7 +20696,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -18986,7 +20709,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -18998,7 +20722,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 100(0x64) |] @@ -19218,7 +20943,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 205(0xCD) |] @@ -19230,9 +20956,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -19242,9 +20969,10 @@ let (norThree3A: InstructionCore[][]) = VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 208(0xD0) |] @@ -19286,7 +21014,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) |] @@ -19330,7 +21059,8 @@ let (norThree3A: InstructionCore[][]) = Operands = [| Imm Sz8; FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 241(0xF1) |] @@ -19406,9 +21136,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -19416,9 +21147,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19426,9 +21158,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19436,9 +21169,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19446,9 +21180,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19456,9 +21191,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19466,9 +21202,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19476,9 +21213,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -19490,7 +21228,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -19498,9 +21237,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19510,7 +21250,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -19518,9 +21259,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz32; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19528,9 +21270,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -19538,9 +21281,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19548,9 +21292,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -19558,9 +21303,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -19570,9 +21316,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -19580,9 +21327,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP @@ -19592,7 +21340,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 @@ -19602,7 +21351,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -19610,9 +21360,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -19620,9 +21371,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -19630,9 +21382,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -19642,9 +21395,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 19u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -19652,9 +21406,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -19664,9 +21419,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -19674,9 +21430,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -19684,9 +21441,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -19694,9 +21452,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -19706,9 +21465,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -19716,9 +21476,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -19726,9 +21487,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -19736,9 +21498,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -19748,9 +21511,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -19758,9 +21522,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP @@ -19770,7 +21535,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -19778,9 +21544,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -19788,9 +21555,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -19800,9 +21568,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 23u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -19810,9 +21579,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) |] @@ -19854,9 +21624,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -19864,9 +21635,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19874,9 +21646,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19884,9 +21657,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -19896,9 +21670,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -19906,9 +21681,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19916,9 +21692,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -19926,9 +21703,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -19938,9 +21716,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 @@ -19948,9 +21727,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -19958,9 +21738,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -19968,9 +21749,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -19980,9 +21762,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -19990,9 +21773,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -20000,9 +21784,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -20010,9 +21795,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -20022,9 +21808,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 @@ -20032,9 +21819,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -20042,9 +21830,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -20052,9 +21841,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -20064,9 +21854,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 @@ -20074,9 +21865,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -20084,9 +21876,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -20094,9 +21887,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -20106,9 +21900,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 46u Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP @@ -20116,9 +21911,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -20128,9 +21924,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 47u Opcode = Opcode.VCOMISS PrefixType = Mandatory NP @@ -20138,9 +21935,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 48(0x30) |] @@ -20186,7 +21984,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.KANDB PrefixType = Mandatory P66 @@ -20196,7 +21995,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.KANDQ PrefixType = Mandatory NP @@ -20206,7 +22006,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 65u Opcode = Opcode.KANDD PrefixType = Mandatory P66 @@ -20216,7 +22017,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -20228,7 +22030,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.KANDNB PrefixType = Mandatory P66 @@ -20238,7 +22041,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.KANDNQ PrefixType = Mandatory NP @@ -20248,7 +22052,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.KANDND PrefixType = Mandatory P66 @@ -20258,7 +22063,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 67(0x43) |] @@ -20272,7 +22078,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.KNOTB PrefixType = Mandatory P66 @@ -20282,7 +22089,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.KNOTQ PrefixType = Mandatory NP @@ -20292,7 +22100,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.KNOTD PrefixType = Mandatory P66 @@ -20302,7 +22111,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -20314,7 +22124,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.KORB PrefixType = Mandatory P66 @@ -20324,7 +22135,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.KORQ PrefixType = Mandatory NP @@ -20334,7 +22146,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.KORD PrefixType = Mandatory P66 @@ -20344,7 +22157,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -20356,7 +22170,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.KXNORB PrefixType = Mandatory P66 @@ -20366,7 +22181,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.KXNORQ PrefixType = Mandatory NP @@ -20376,7 +22192,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.KXNORD PrefixType = Mandatory P66 @@ -20386,7 +22203,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -20398,7 +22216,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.KXORB PrefixType = Mandatory P66 @@ -20408,7 +22227,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.KXORQ PrefixType = Mandatory NP @@ -20418,7 +22238,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.KXORD PrefixType = Mandatory P66 @@ -20428,7 +22249,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 72(0x48) |] @@ -20444,7 +22266,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.KADDB PrefixType = Mandatory P66 @@ -20454,7 +22277,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.KADDQ PrefixType = Mandatory NP @@ -20464,7 +22288,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.KADDD PrefixType = Mandatory P66 @@ -20474,7 +22299,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -20486,7 +22312,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.KUNPCKWD PrefixType = Mandatory NP @@ -20496,7 +22323,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.KUNPCKDQ PrefixType = Mandatory NP @@ -20506,7 +22334,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] OpEn = OpEn.RVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 76(0x4C) |] @@ -20526,7 +22355,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPD PrefixType = Mandatory P66 @@ -20536,7 +22366,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP @@ -20546,7 +22377,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.VMOVMSKPS PrefixType = Mandatory NP @@ -20556,7 +22388,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -20566,9 +22399,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -20576,9 +22410,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -20586,9 +22421,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -20596,9 +22432,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 @@ -20606,9 +22443,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 @@ -20616,9 +22454,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -20630,7 +22469,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.VRSQRTPS PrefixType = Mandatory NP @@ -20640,7 +22480,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.VRSQRTSS PrefixType = Mandatory F3 @@ -20650,7 +22491,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -20662,7 +22504,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.VRCPPS PrefixType = Mandatory NP @@ -20672,7 +22515,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.VRCPSS PrefixType = Mandatory F3 @@ -20682,7 +22526,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -20692,9 +22537,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -20702,9 +22548,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -20712,9 +22559,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -20722,9 +22570,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -20734,9 +22583,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -20744,9 +22594,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -20754,9 +22605,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -20764,9 +22616,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -20776,9 +22629,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -20786,9 +22640,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -20796,9 +22651,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -20806,9 +22662,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -20818,9 +22675,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -20828,9 +22686,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -20838,9 +22697,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -20848,9 +22708,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -20860,9 +22721,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -20870,9 +22732,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -20880,9 +22743,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -20890,9 +22754,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VADDSD PrefixType = Mandatory F2 @@ -20900,9 +22765,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VADDSS PrefixType = Mandatory F3 @@ -20910,9 +22776,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -20922,9 +22789,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -20932,9 +22800,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -20942,9 +22811,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -20952,9 +22822,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VMULSD PrefixType = Mandatory F2 @@ -20962,9 +22833,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VMULSS PrefixType = Mandatory F3 @@ -20972,9 +22844,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -20984,9 +22857,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -20994,9 +22868,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -21004,9 +22879,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -21014,9 +22890,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 @@ -21024,9 +22901,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 90u Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 @@ -21034,9 +22912,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -21046,9 +22925,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -21056,9 +22936,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -21066,9 +22947,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -21076,9 +22958,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -21086,9 +22969,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -21096,9 +22980,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -21108,9 +22993,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -21118,9 +23004,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -21128,9 +23015,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -21138,9 +23026,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 @@ -21148,9 +23037,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 @@ -21158,9 +23048,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -21170,9 +23061,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -21180,9 +23072,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -21190,9 +23083,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -21200,9 +23094,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.VMINSD PrefixType = Mandatory F2 @@ -21210,9 +23105,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 93u Opcode = Opcode.VMINSS PrefixType = Mandatory F3 @@ -21220,9 +23116,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -21232,9 +23129,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -21242,9 +23140,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -21252,9 +23151,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -21262,9 +23162,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 @@ -21272,9 +23173,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 @@ -21282,9 +23184,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -21294,9 +23197,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -21304,9 +23208,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -21314,9 +23219,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -21324,9 +23230,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 @@ -21334,9 +23241,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 95u Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 @@ -21344,9 +23252,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -21356,9 +23265,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -21366,9 +23276,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -21378,9 +23289,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -21388,9 +23300,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -21400,9 +23313,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -21410,9 +23324,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -21422,9 +23337,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -21432,9 +23348,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -21444,9 +23361,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -21454,9 +23372,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -21466,9 +23385,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -21476,9 +23396,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -21488,9 +23409,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -21498,9 +23420,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -21510,9 +23433,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -21520,9 +23444,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -21532,9 +23457,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -21542,9 +23468,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -21554,9 +23481,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -21564,9 +23492,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -21576,9 +23505,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -21586,9 +23516,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -21598,9 +23529,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -21608,9 +23540,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -21620,9 +23553,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -21630,9 +23564,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -21642,9 +23577,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -21652,9 +23588,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -21664,9 +23601,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -21674,9 +23612,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "R64/M64" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -21686,9 +23625,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 @@ -21696,9 +23636,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -21706,9 +23647,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -21716,9 +23658,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -21728,9 +23671,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -21738,9 +23682,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -21748,9 +23693,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -21758,9 +23704,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -21768,9 +23715,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -21778,9 +23726,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -21790,9 +23739,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -21800,9 +23750,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -21810,9 +23761,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -21820,9 +23772,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -21830,9 +23783,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -21840,9 +23794,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -21852,9 +23807,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -21862,9 +23818,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -21872,9 +23829,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -21882,9 +23840,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -21892,9 +23851,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -21902,9 +23862,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -21914,9 +23875,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -21924,9 +23886,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -21934,9 +23897,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -21944,9 +23908,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -21954,9 +23919,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -21964,9 +23930,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -21974,9 +23941,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -21984,9 +23952,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -21996,9 +23965,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -22006,9 +23976,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -22018,9 +23989,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -22028,9 +24000,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -22040,9 +24013,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -22050,9 +24024,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -22064,7 +24039,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 119u Opcode = Opcode.VZEROUPPER PrefixType = Mandatory NP @@ -22074,7 +24050,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 120(0x78) |] @@ -22094,7 +24071,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 124u Opcode = Opcode.VHADDPD PrefixType = Mandatory P66 @@ -22104,7 +24082,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 124u Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 @@ -22114,7 +24093,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 124u Opcode = Opcode.VHADDPS PrefixType = Mandatory F2 @@ -22124,7 +24104,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -22136,7 +24117,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 125u Opcode = Opcode.VHSUBPD PrefixType = Mandatory P66 @@ -22146,7 +24128,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 125u Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 @@ -22156,7 +24139,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 125u Opcode = Opcode.VHSUBPS PrefixType = Mandatory F2 @@ -22166,7 +24150,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -22176,9 +24161,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -22186,9 +24172,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 @@ -22196,9 +24183,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -22208,9 +24196,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA PrefixType = Mandatory P66 @@ -22218,9 +24207,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -22228,9 +24218,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU PrefixType = Mandatory F3 @@ -22238,9 +24229,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 128(0x80) |] @@ -22284,7 +24276,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2/M16" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22294,7 +24287,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2/M8" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.KMOVQ PrefixType = Mandatory NP @@ -22304,7 +24298,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2/M64" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.KMOVD PrefixType = Mandatory P66 @@ -22314,7 +24309,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2/M32" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -22326,7 +24322,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz16; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22336,7 +24333,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz8; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.KMOVQ PrefixType = Mandatory NP @@ -22346,7 +24344,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz64; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.KMOVD PrefixType = Mandatory P66 @@ -22356,7 +24355,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz32; Unknown "K1" |] OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -22368,7 +24368,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22378,7 +24379,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 @@ -22388,7 +24390,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz64 |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.KMOVD PrefixType = Mandatory F2 @@ -22398,7 +24401,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -22410,7 +24414,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.KMOVB PrefixType = Mandatory P66 @@ -22420,7 +24425,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.KMOVQ PrefixType = Mandatory F2 @@ -22430,7 +24436,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz64; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.KMOVD PrefixType = Mandatory F2 @@ -22440,7 +24447,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Unknown "K1" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 148(0x94) |] @@ -22460,7 +24468,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.KORTESTB PrefixType = Mandatory P66 @@ -22470,7 +24479,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.KORTESTQ PrefixType = Mandatory NP @@ -22480,7 +24490,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.KORTESTD PrefixType = Mandatory P66 @@ -22490,7 +24501,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -22502,7 +24514,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.KTESTB PrefixType = Mandatory P66 @@ -22512,7 +24525,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.KTESTQ PrefixType = Mandatory NP @@ -22522,7 +24536,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.KTESTD PrefixType = Mandatory P66 @@ -22532,7 +24547,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2" |] OpEn = OpEn.RR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 154(0x9A) |] @@ -22584,7 +24600,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.InvalOP PrefixType = Mandatory NP @@ -22594,7 +24611,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Mem Sz32 |] OpEn = OpEn.M Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 175(0xAF) |] @@ -22642,9 +24660,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -22652,9 +24671,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -22662,9 +24682,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -22672,9 +24693,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 @@ -22682,9 +24704,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 194u Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 @@ -22692,9 +24715,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 195(0xC3) |] @@ -22706,9 +24730,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -22718,9 +24743,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -22730,9 +24756,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -22740,9 +24767,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -22750,9 +24778,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -22760,9 +24789,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 199(0xC7) |] @@ -22792,7 +24822,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPD PrefixType = Mandatory P66 @@ -22802,7 +24833,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 @@ -22812,7 +24844,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 208u Opcode = Opcode.VADDSUBPS PrefixType = Mandatory F2 @@ -22822,7 +24855,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 209(0xD1) { OpcodeByte = 209u @@ -22832,9 +24866,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -22842,9 +24877,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -22854,9 +24890,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -22864,9 +24901,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -22876,9 +24914,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -22886,9 +24925,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -22898,9 +24938,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -22908,9 +24949,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -22920,9 +24962,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -22930,9 +24973,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -22942,9 +24986,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 215(0xD7) { OpcodeByte = 215u @@ -22956,7 +25001,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 215u Opcode = Opcode.VPMOVMSKB PrefixType = Mandatory P66 @@ -22966,7 +25012,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz32; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 216(0xD8) { OpcodeByte = 216u @@ -22976,9 +25023,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -22986,9 +25034,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -22998,9 +25047,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -23008,9 +25058,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -23020,9 +25071,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -23030,9 +25082,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -23042,9 +25095,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 219u Opcode = Opcode.VPAND PrefixType = Mandatory P66 @@ -23052,9 +25106,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -23064,9 +25119,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -23074,9 +25130,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -23086,9 +25143,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -23096,9 +25154,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -23108,9 +25167,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -23118,9 +25178,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -23130,9 +25191,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.VPANDN PrefixType = Mandatory P66 @@ -23140,9 +25202,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -23152,9 +25215,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -23162,9 +25226,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -23174,9 +25239,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -23184,9 +25250,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -23196,9 +25263,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -23206,9 +25274,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -23218,9 +25287,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -23228,9 +25298,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -23240,9 +25311,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -23250,9 +25322,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -23262,9 +25335,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -23272,9 +25346,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -23284,9 +25359,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -23294,9 +25370,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -23304,9 +25381,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -23314,9 +25392,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -23324,9 +25403,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -23334,9 +25414,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -23346,9 +25427,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -23356,9 +25438,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -23368,9 +25451,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -23378,9 +25462,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -23390,9 +25475,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -23400,9 +25486,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -23412,9 +25499,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -23422,9 +25510,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -23434,9 +25523,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 235u Opcode = Opcode.VPOR PrefixType = Mandatory P66 @@ -23444,9 +25534,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -23456,9 +25547,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -23466,9 +25558,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -23478,9 +25571,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -23488,9 +25582,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -23500,9 +25595,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -23510,9 +25606,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -23522,9 +25619,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 239u Opcode = Opcode.VPXOR PrefixType = Mandatory P66 @@ -23532,9 +25630,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 240(0xF0) { OpcodeByte = 240u @@ -23546,7 +25645,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.VLDDQU PrefixType = Mandatory F2 @@ -23556,7 +25656,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 241(0xF1) { OpcodeByte = 241u @@ -23566,9 +25667,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -23576,9 +25678,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -23588,9 +25691,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -23598,9 +25702,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -23610,9 +25715,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -23620,9 +25726,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -23632,9 +25739,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -23642,9 +25750,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -23654,9 +25763,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -23664,9 +25774,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -23676,9 +25787,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -23686,9 +25798,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -23700,7 +25813,8 @@ let (vexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 248(0xF8) { OpcodeByte = 248u @@ -23710,9 +25824,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -23720,9 +25835,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -23732,9 +25848,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -23742,9 +25859,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -23754,9 +25872,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -23764,9 +25883,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -23776,9 +25896,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -23786,9 +25907,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -23798,9 +25920,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -23808,9 +25931,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -23820,9 +25944,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -23830,9 +25955,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -23842,9 +25968,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -23852,9 +25979,10 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 255(0xFF) |] @@ -23870,9 +25998,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -23880,9 +26009,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -23894,7 +26024,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 1u Opcode = Opcode.VPHADDW PrefixType = Mandatory P66 @@ -23904,7 +26035,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -23916,7 +26048,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 2u Opcode = Opcode.VPHADDD PrefixType = Mandatory P66 @@ -23926,7 +26059,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 3(0x03) { OpcodeByte = 3u @@ -23938,7 +26072,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 3u Opcode = Opcode.VPHADDSW PrefixType = Mandatory P66 @@ -23948,7 +26083,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -23958,9 +26094,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -23968,9 +26105,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -23982,7 +26120,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 5u Opcode = Opcode.VPHSUBW PrefixType = Mandatory P66 @@ -23992,7 +26131,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -24004,7 +26144,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 6u Opcode = Opcode.VPHSUBD PrefixType = Mandatory P66 @@ -24014,7 +26155,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 7(0x07) { OpcodeByte = 7u @@ -24026,7 +26168,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 7u Opcode = Opcode.VPHSUBSW PrefixType = Mandatory P66 @@ -24036,7 +26179,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 8(0x08) { OpcodeByte = 8u @@ -24048,7 +26192,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 8u Opcode = Opcode.VPSIGNB PrefixType = Mandatory P66 @@ -24058,7 +26203,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -24070,7 +26216,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.VPSIGNW PrefixType = Mandatory P66 @@ -24080,7 +26227,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -24092,7 +26240,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 10u Opcode = Opcode.VPSIGND PrefixType = Mandatory P66 @@ -24102,7 +26251,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -24112,9 +26262,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -24122,9 +26273,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -24134,9 +26286,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -24144,9 +26297,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -24156,9 +26310,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -24166,9 +26321,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -24180,7 +26336,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 14u Opcode = Opcode.VTESTPS PrefixType = Mandatory P66 @@ -24190,7 +26347,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -24202,7 +26360,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 15u Opcode = Opcode.VTESTPD PrefixType = Mandatory P66 @@ -24212,7 +26371,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 16(0x10) |] @@ -24228,9 +26388,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -24238,9 +26399,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 20(0x14) |] @@ -24254,9 +26416,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -24268,7 +26431,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 23u Opcode = Opcode.VPTEST PrefixType = Mandatory P66 @@ -24278,7 +26442,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -24288,9 +26453,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24298,9 +26464,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24308,9 +26475,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -24318,9 +26486,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -24330,9 +26499,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 25u Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 @@ -24340,9 +26510,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -24352,9 +26523,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 27(0x1B) |] @@ -24366,9 +26538,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -24376,9 +26549,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -24388,9 +26562,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -24398,9 +26573,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -24410,9 +26586,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -24420,9 +26597,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 31(0x1F) |] @@ -24434,9 +26612,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -24444,9 +26623,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -24456,9 +26636,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -24466,9 +26647,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -24478,9 +26660,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -24488,9 +26671,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -24500,9 +26684,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -24510,9 +26695,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -24522,9 +26708,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -24532,9 +26719,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -24544,9 +26732,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -24554,9 +26743,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 38(0x26) |] @@ -24570,9 +26760,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -24580,9 +26771,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -24592,9 +26784,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -24602,9 +26795,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -24614,9 +26808,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -24624,9 +26819,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -24636,9 +26832,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -24646,9 +26843,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -24660,7 +26858,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 44u Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 @@ -24670,7 +26869,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -24682,7 +26882,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 45u Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 @@ -24692,7 +26893,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -24704,7 +26906,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 46u Opcode = Opcode.VMASKMOVPS PrefixType = Mandatory P66 @@ -24714,7 +26917,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -24726,7 +26930,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 47u Opcode = Opcode.VMASKMOVPD PrefixType = Mandatory P66 @@ -24736,7 +26941,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 48(0x30) { OpcodeByte = 48u @@ -24746,9 +26952,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -24756,9 +26963,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -24768,9 +26976,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -24778,9 +26987,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -24790,9 +27000,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -24800,9 +27011,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -24812,9 +27024,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -24822,9 +27035,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -24834,9 +27048,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -24844,9 +27059,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -24856,9 +27072,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -24866,9 +27083,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 54(0x36) { OpcodeByte = 54u @@ -24878,9 +27096,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 55(0x37) { OpcodeByte = 55u @@ -24890,9 +27109,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -24900,9 +27120,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -24912,9 +27133,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -24922,9 +27144,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -24934,9 +27157,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -24944,9 +27168,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -24956,9 +27181,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -24966,9 +27192,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -24978,9 +27205,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -24988,9 +27216,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -25000,9 +27229,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -25010,9 +27240,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -25022,9 +27253,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -25032,9 +27264,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -25044,9 +27277,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -25054,9 +27288,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -25066,9 +27301,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -25076,9 +27312,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -25088,9 +27325,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -25098,9 +27336,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -25112,7 +27351,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) |] @@ -25128,9 +27368,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -25138,9 +27379,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -25148,9 +27390,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -25158,9 +27401,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -25170,9 +27414,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -25180,9 +27425,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -25192,9 +27438,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -25202,9 +27449,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -25212,9 +27460,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -25222,9 +27471,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 72(0x48) |] @@ -25238,7 +27488,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25248,7 +27499,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25258,7 +27510,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| NoOpr |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 73u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25268,7 +27521,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 74(0x4A) |] @@ -25280,9 +27534,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25290,9 +27545,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25300,9 +27556,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Unknown "SIBMEM"; Unknown "TMM1" |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 76(0x4C) |] @@ -25320,9 +27577,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25330,9 +27588,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25340,9 +27599,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25350,9 +27610,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25360,9 +27621,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25370,9 +27632,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -25380,9 +27643,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -25390,9 +27654,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -25402,9 +27667,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25412,9 +27678,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25422,9 +27689,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25432,9 +27700,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25442,9 +27711,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25452,9 +27722,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -25462,9 +27733,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -25472,9 +27744,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -25484,9 +27757,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -25494,9 +27768,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -25506,9 +27781,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -25516,9 +27792,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 84(0x54) |] @@ -25536,9 +27813,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -25546,9 +27824,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -25558,9 +27837,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -25568,9 +27848,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -25580,9 +27861,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 91(0x5B) |] @@ -25596,7 +27878,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 92u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25606,7 +27889,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 93(0x5D) |] @@ -25620,7 +27904,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25630,7 +27915,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -25640,7 +27926,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 94u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -25650,7 +27937,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 95(0x5F) |] @@ -25698,9 +27986,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -25708,9 +27997,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 115(0x73) |] @@ -25730,9 +28020,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -25740,9 +28031,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -25752,9 +28044,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -25762,9 +28055,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "XMM2/M16" |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 122(0x7A) |] @@ -25812,7 +28106,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 @@ -25822,7 +28117,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25832,7 +28128,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 140u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25842,7 +28139,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 141(0x8D) |] @@ -25856,7 +28154,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVD PrefixType = Mandatory P66 @@ -25866,7 +28165,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25876,7 +28176,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 142u Opcode = Opcode.VPMASKMOVQ PrefixType = Mandatory P66 @@ -25886,7 +28187,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] OpEn = OpEn.MVR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 143(0x8F) |] @@ -25900,7 +28202,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -25910,7 +28213,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -25920,7 +28224,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -25930,7 +28235,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -25942,7 +28248,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -25952,7 +28259,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -25962,7 +28270,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -25972,7 +28281,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -25984,7 +28294,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -25994,7 +28305,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -26004,7 +28316,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -26014,7 +28327,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -26026,7 +28340,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -26036,7 +28351,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -26046,7 +28362,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -26056,7 +28373,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 148(0x94) |] @@ -26070,9 +28388,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -26080,9 +28399,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -26090,9 +28410,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -26100,9 +28421,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -26112,9 +28434,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -26122,9 +28445,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -26132,9 +28456,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -26142,9 +28467,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -26154,9 +28480,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -26164,9 +28491,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -26174,9 +28502,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -26184,9 +28513,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -26196,9 +28526,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 153u Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 @@ -26206,9 +28537,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -26218,9 +28550,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -26228,9 +28561,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -26238,9 +28572,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -26248,9 +28583,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -26260,9 +28596,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 155u Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 @@ -26270,9 +28607,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -26282,9 +28620,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -26292,9 +28631,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -26302,9 +28642,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -26312,9 +28653,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -26324,9 +28666,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 157u Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 @@ -26334,9 +28677,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -26346,9 +28690,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -26356,9 +28701,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -26366,9 +28712,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -26376,9 +28723,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -26388,9 +28736,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 159u Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 @@ -26398,9 +28747,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 160(0xA0) |] @@ -26422,9 +28772,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -26432,9 +28783,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -26442,9 +28794,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -26452,9 +28805,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 167(0xA7) { OpcodeByte = 167u @@ -26464,9 +28818,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -26474,9 +28829,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -26484,9 +28840,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -26494,9 +28851,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 168(0xA8) { OpcodeByte = 168u @@ -26506,9 +28864,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -26516,9 +28875,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -26526,9 +28886,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -26536,9 +28897,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -26548,9 +28910,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 169u Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 @@ -26558,9 +28921,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -26570,9 +28934,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -26580,9 +28945,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -26590,9 +28956,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -26600,9 +28967,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -26612,9 +28980,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 @@ -26622,9 +28991,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -26634,9 +29004,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -26644,9 +29015,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -26654,9 +29026,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -26664,9 +29037,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -26676,9 +29050,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 @@ -26686,9 +29061,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -26698,9 +29074,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -26708,9 +29085,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -26718,9 +29096,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -26728,9 +29107,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -26740,9 +29120,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 @@ -26750,9 +29131,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 176(0xB0) { OpcodeByte = 176u @@ -26762,9 +29144,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26772,9 +29155,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26782,9 +29166,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26792,9 +29177,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26802,9 +29188,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26812,9 +29199,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26822,9 +29210,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 176u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26832,9 +29221,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 177(0xB1) { OpcodeByte = 177u @@ -26844,9 +29234,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -26854,9 +29245,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26864,9 +29256,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Mem Sz16 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 177u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -26874,9 +29267,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Mem Sz16 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 178(0xB2) |] @@ -26890,9 +29284,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -26900,9 +29295,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -26912,9 +29308,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -26922,9 +29319,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -26934,9 +29332,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -26944,9 +29343,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -26954,9 +29354,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -26964,9 +29365,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -26976,9 +29378,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -26986,9 +29389,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -26996,9 +29400,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -27006,9 +29411,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -27018,9 +29424,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -27028,9 +29435,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -27038,9 +29446,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -27048,9 +29457,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -27060,9 +29470,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 185u Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 @@ -27070,9 +29481,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -27082,9 +29494,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -27092,9 +29505,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -27102,9 +29516,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -27112,9 +29527,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -27124,9 +29540,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 187u Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 @@ -27134,9 +29551,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -27146,9 +29564,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -27156,9 +29575,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -27166,9 +29586,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -27176,9 +29597,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -27188,9 +29610,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 189u Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 @@ -27198,9 +29621,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -27210,9 +29634,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -27220,9 +29645,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -27230,9 +29656,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -27240,9 +29667,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -27252,9 +29680,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 191u Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 @@ -27262,9 +29691,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 192(0xC0) |] @@ -27296,9 +29726,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -27308,9 +29739,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -27320,9 +29752,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 206(0xCE) |] @@ -27334,9 +29767,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -27344,9 +29778,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 208(0xD0) |] @@ -27360,9 +29795,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27370,9 +29806,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27380,9 +29817,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27390,9 +29828,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27400,9 +29839,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 210u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27410,9 +29850,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -27422,9 +29863,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27432,9 +29874,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27442,9 +29885,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27452,9 +29896,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27462,9 +29907,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 211u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27472,9 +29918,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 212(0xD4) |] @@ -27496,9 +29943,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27506,9 +29954,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27516,9 +29965,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27526,9 +29976,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27536,9 +29987,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 218u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -27546,9 +29998,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -27560,7 +30013,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -27570,9 +30024,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -27580,9 +30035,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -27592,9 +30048,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -27602,9 +30059,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -27614,9 +30072,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -27624,9 +30083,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -27636,9 +30096,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -27646,9 +30107,10 @@ let (vexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -27660,7 +30122,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 224u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27670,7 +30133,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -27682,7 +30146,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 225u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27692,7 +30157,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -27704,7 +30170,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 226u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27714,7 +30181,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -27726,7 +30194,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 227u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27736,7 +30205,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -27748,7 +30218,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 228u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27758,7 +30229,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -27770,7 +30242,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 229u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27780,7 +30253,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -27792,7 +30266,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 230u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27802,7 +30277,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -27814,7 +30290,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 231u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27824,7 +30301,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -27836,7 +30314,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 232u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27846,7 +30325,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -27858,7 +30338,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 233u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27868,7 +30349,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -27880,7 +30362,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 234u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27890,7 +30373,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -27902,7 +30386,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 235u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27912,7 +30397,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -27924,7 +30410,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 236u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27934,7 +30421,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -27946,7 +30434,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 237u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27956,7 +30445,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -27968,7 +30458,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 238u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -27978,7 +30469,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -27990,7 +30482,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 239u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -28000,7 +30493,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] OpEn = OpEn.A Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 240(0xF0) |] @@ -28016,7 +30510,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 242u Opcode = Opcode.ANDN PrefixType = Mandatory F3 @@ -28026,7 +30521,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -28038,7 +30534,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.BLSI PrefixType = Mandatory F3 @@ -28048,7 +30545,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 @@ -28058,7 +30556,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.BLSMSK PrefixType = Mandatory F3 @@ -28068,7 +30567,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.BLSR PrefixType = Mandatory F3 @@ -28078,7 +30578,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 243u Opcode = Opcode.BLSR PrefixType = Mandatory F3 @@ -28088,7 +30589,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 244(0xF4) |] @@ -28102,7 +30604,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.BZHI PrefixType = Mandatory F3 @@ -28112,7 +30615,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.PDEP PrefixType = Mandatory F3 @@ -28122,7 +30626,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.PDEP PrefixType = Mandatory F3 @@ -28132,7 +30637,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.PEXT PrefixType = Mandatory F3 @@ -28142,7 +30648,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 245u Opcode = Opcode.PEXT PrefixType = Mandatory F3 @@ -28152,7 +30659,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -28164,7 +30672,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 246u Opcode = Opcode.MULX PrefixType = Mandatory F3 @@ -28174,7 +30683,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 247(0xF7) { OpcodeByte = 247u @@ -28186,7 +30696,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.BEXTR PrefixType = Mandatory F3 @@ -28196,7 +30707,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SARX PrefixType = Mandatory F3 @@ -28206,7 +30718,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SHLX PrefixType = Mandatory P66 @@ -28216,7 +30729,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SHRX PrefixType = Mandatory F3 @@ -28226,7 +30740,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] OpEn = OpEn.RMV Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SARX PrefixType = Mandatory F3 @@ -28236,7 +30751,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SHLX PrefixType = Mandatory P66 @@ -28246,7 +30762,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } { OpcodeByte = 247u Opcode = Opcode.SHRX PrefixType = Mandatory F3 @@ -28256,7 +30773,8 @@ let (vexThree38: InstructionCore[][]) = Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] OpEn = OpEn.RMV Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 248(0xF8) |] @@ -28286,9 +30804,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -28298,9 +30817,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 2(0x02) { OpcodeByte = 2u @@ -28312,7 +30832,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 2u Opcode = Opcode.VPBLENDD PrefixType = Mandatory P66 @@ -28322,7 +30843,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 3(0x03) |] @@ -28334,9 +30856,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -28344,9 +30867,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -28356,9 +30880,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -28366,9 +30891,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 6(0x06) { OpcodeByte = 6u @@ -28380,7 +30906,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 7(0x07) |] @@ -28394,7 +30921,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 8u Opcode = Opcode.VROUNDPS PrefixType = Mandatory P66 @@ -28404,7 +30932,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -28416,7 +30945,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 9u Opcode = Opcode.VROUNDPD PrefixType = Mandatory P66 @@ -28426,7 +30956,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -28438,7 +30969,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -28450,7 +30982,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -28462,7 +30995,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 12u Opcode = Opcode.VBLENDPS PrefixType = Mandatory P66 @@ -28472,7 +31006,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -28484,7 +31019,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 13u Opcode = Opcode.VBLENDPD PrefixType = Mandatory P66 @@ -28494,7 +31030,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 14(0x0E) { OpcodeByte = 14u @@ -28506,7 +31043,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 14u Opcode = Opcode.VPBLENDW PrefixType = Mandatory P66 @@ -28516,7 +31054,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 15(0x0F) { OpcodeByte = 15u @@ -28526,9 +31065,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -28536,9 +31076,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 16(0x10) |] @@ -28556,9 +31097,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -28568,9 +31110,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -28580,9 +31123,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 @@ -28590,9 +31134,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -28602,9 +31147,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -28614,9 +31160,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -28626,9 +31173,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 26(0x1A) |] @@ -28644,9 +31192,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -28654,9 +31203,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 30(0x1E) |] @@ -28670,9 +31220,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -28682,9 +31233,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -28694,9 +31246,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 34u Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 @@ -28704,9 +31257,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Invalid } + Compat = CompatLegMode.Invalid + TupleType = TupleType.NA } |] [| // index 35(0x23) |] @@ -28744,7 +31298,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 48u Opcode = Opcode.KSHIFTRB PrefixType = Mandatory P66 @@ -28754,7 +31309,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -28766,7 +31322,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 49u Opcode = Opcode.KSHIFTRD PrefixType = Mandatory P66 @@ -28776,7 +31333,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -28788,7 +31346,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 50u Opcode = Opcode.KSHIFTLB PrefixType = Mandatory P66 @@ -28798,7 +31357,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -28810,7 +31370,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 51u Opcode = Opcode.KSHIFTLD PrefixType = Mandatory P66 @@ -28820,7 +31381,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 52(0x34) |] @@ -28838,9 +31400,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -28850,9 +31413,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 58(0x3A) |] @@ -28876,7 +31440,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 64u Opcode = Opcode.VDPPS PrefixType = Mandatory P66 @@ -28886,7 +31451,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 65(0x41) { OpcodeByte = 65u @@ -28898,7 +31464,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 66(0x42) { OpcodeByte = 66u @@ -28910,7 +31477,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 66u Opcode = Opcode.VMPSADBW PrefixType = Mandatory P66 @@ -28920,7 +31488,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 67(0x43) |] @@ -28932,9 +31501,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -28942,9 +31512,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 69(0x45) |] @@ -28958,7 +31529,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 71(0x47) |] @@ -28976,7 +31548,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 74u Opcode = Opcode.VBLENDVPS PrefixType = Mandatory P66 @@ -28986,7 +31559,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 75(0x4B) { OpcodeByte = 75u @@ -28998,7 +31572,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 75u Opcode = Opcode.VBLENDVPD PrefixType = Mandatory P66 @@ -29008,7 +31583,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 76(0x4C) { OpcodeByte = 76u @@ -29020,7 +31596,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 76u Opcode = Opcode.VPBLENDVB PrefixType = Mandatory P66 @@ -29030,7 +31607,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 77(0x4D) |] @@ -29080,7 +31658,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -29092,7 +31671,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -29104,7 +31684,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -29116,7 +31697,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 100(0x64) |] @@ -29338,9 +31920,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -29348,9 +31931,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -29360,9 +31944,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -29370,9 +31955,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 208(0xD0) |] @@ -29410,9 +31996,10 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -29424,7 +32011,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 224(0xE0) |] @@ -29468,7 +32056,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 240u Opcode = Opcode.RORX PrefixType = Mandatory F3 @@ -29478,7 +32067,8 @@ let (vexThree3A: InstructionCore[][]) = Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.NA } |] [| // index 241(0xF1) |] @@ -29554,9 +32144,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -29564,9 +32155,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz64 |] - OpEn = OpEn.F + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29574,9 +32166,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 16u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29584,9 +32177,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz32 |] - OpEn = OpEn.F + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29594,9 +32188,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29604,9 +32199,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29614,9 +32210,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29624,9 +32221,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29634,9 +32232,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29644,9 +32243,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -29658,7 +32258,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVSD PrefixType = Mandatory F2 @@ -29668,7 +32269,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Unknown "M64{K1}"; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29678,7 +32280,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.E Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 17u Opcode = Opcode.VMOVSS PrefixType = Mandatory F3 @@ -29688,7 +32291,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Unknown "M32{K1}"; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29696,9 +32300,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29706,9 +32311,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VMOVUPD PrefixType = Mandatory P66 @@ -29716,9 +32322,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29726,9 +32333,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29736,9 +32344,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VMOVUPS PrefixType = Mandatory NP @@ -29746,9 +32355,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -29758,9 +32368,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.MOVDDUP } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -29768,9 +32379,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.MOVDDUP } { OpcodeByte = 18u Opcode = Opcode.VMOVDDUP PrefixType = Mandatory F2 @@ -29778,9 +32390,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.MOVDDUP } { OpcodeByte = 18u Opcode = Opcode.VMOVHLPS PrefixType = Mandatory NP @@ -29790,7 +32403,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 18u Opcode = Opcode.VMOVLPD PrefixType = Mandatory P66 @@ -29798,9 +32412,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 18u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -29808,9 +32423,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29818,9 +32434,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29828,9 +32445,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 18u Opcode = Opcode.VMOVSLDUP PrefixType = Mandatory F3 @@ -29838,9 +32456,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -29850,9 +32469,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 19u Opcode = Opcode.VMOVLPS PrefixType = Mandatory NP @@ -29860,9 +32480,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -29872,9 +32493,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -29882,9 +32504,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPD PrefixType = Mandatory P66 @@ -29892,9 +32515,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29902,9 +32526,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29912,9 +32537,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VUNPCKLPS PrefixType = Mandatory NP @@ -29922,9 +32548,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -29934,9 +32561,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -29944,9 +32572,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPD PrefixType = Mandatory P66 @@ -29954,9 +32583,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29964,9 +32594,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29974,9 +32605,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VUNPCKHPS PrefixType = Mandatory NP @@ -29984,9 +32616,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -29996,9 +32629,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 22u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -30006,9 +32640,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 22u Opcode = Opcode.VMOVLHPS PrefixType = Mandatory NP @@ -30018,7 +32653,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30026,9 +32662,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30036,9 +32673,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 22u Opcode = Opcode.VMOVSHDUP PrefixType = Mandatory F3 @@ -30046,9 +32684,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -30058,9 +32697,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 23u Opcode = Opcode.VMOVHPS PrefixType = Mandatory NP @@ -30068,9 +32708,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz64; Reg Sz128 |] - OpEn = OpEn.E + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 24(0x18) |] @@ -30112,9 +32753,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30122,9 +32764,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 40u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30132,9 +32775,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30142,9 +32786,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30152,9 +32797,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 40u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30162,9 +32808,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -30174,9 +32821,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30184,9 +32832,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 41u Opcode = Opcode.VMOVAPD PrefixType = Mandatory P66 @@ -30194,9 +32843,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30204,9 +32854,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30214,9 +32865,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 41u Opcode = Opcode.VMOVAPS PrefixType = Mandatory NP @@ -30224,9 +32876,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -30236,9 +32889,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SD PrefixType = Mandatory F2 @@ -30246,9 +32900,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -30256,9 +32911,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 42u Opcode = Opcode.VCVTSI2SS PrefixType = Mandatory F3 @@ -30266,9 +32922,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -30278,9 +32935,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -30288,9 +32946,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPD PrefixType = Mandatory P66 @@ -30298,9 +32957,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30308,9 +32968,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30318,9 +32979,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 43u Opcode = Opcode.VMOVNTPS PrefixType = Mandatory NP @@ -30328,9 +32990,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -30340,9 +33003,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 44u Opcode = Opcode.VCVTTSD2SI PrefixType = Mandatory F2 @@ -30350,9 +33014,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -30360,9 +33025,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 44u Opcode = Opcode.VCVTTSS2SI PrefixType = Mandatory F3 @@ -30370,9 +33036,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -30382,9 +33049,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 45u Opcode = Opcode.VCVTSD2SI PrefixType = Mandatory F2 @@ -30392,9 +33060,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -30402,9 +33071,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 45u Opcode = Opcode.VCVTSS2SI PrefixType = Mandatory F3 @@ -30412,9 +33082,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } |] [| // index 46(0x2E) { OpcodeByte = 46u @@ -30424,9 +33095,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 46u Opcode = Opcode.VUCOMISS PrefixType = Mandatory NP @@ -30434,9 +33106,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 47(0x2F) { OpcodeByte = 47u @@ -30446,9 +33119,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 47u Opcode = Opcode.VCOMISS PrefixType = Mandatory NP @@ -30456,9 +33130,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 48(0x30) |] @@ -30534,9 +33209,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -30544,9 +33220,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTPD PrefixType = Mandatory P66 @@ -30554,9 +33231,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30564,9 +33242,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30574,9 +33253,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTPS PrefixType = Mandatory NP @@ -30584,9 +33264,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VSQRTSD PrefixType = Mandatory F2 @@ -30594,9 +33275,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 81u Opcode = Opcode.VSQRTSS PrefixType = Mandatory F3 @@ -30604,9 +33286,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 82(0x52) |] @@ -30620,9 +33303,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -30630,9 +33314,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VANDPD PrefixType = Mandatory P66 @@ -30640,9 +33325,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30650,9 +33336,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30660,9 +33347,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VANDPS PrefixType = Mandatory NP @@ -30670,9 +33358,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -30682,9 +33371,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -30692,9 +33382,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VANDNPD PrefixType = Mandatory P66 @@ -30702,9 +33393,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30712,9 +33404,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30722,9 +33415,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VANDNPS PrefixType = Mandatory NP @@ -30732,9 +33426,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -30744,9 +33439,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -30754,9 +33450,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VORPD PrefixType = Mandatory P66 @@ -30764,9 +33461,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30774,9 +33472,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30784,9 +33483,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VORPS PrefixType = Mandatory NP @@ -30794,9 +33494,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -30806,9 +33507,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -30816,9 +33518,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 87u Opcode = Opcode.VXORPD PrefixType = Mandatory P66 @@ -30826,9 +33529,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30836,9 +33540,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30846,9 +33551,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 87u Opcode = Opcode.VXORPS PrefixType = Mandatory NP @@ -30856,9 +33562,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 88(0x58) { OpcodeByte = 88u @@ -30868,9 +33575,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -30878,9 +33586,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDPD PrefixType = Mandatory P66 @@ -30888,9 +33597,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30898,9 +33608,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30908,9 +33619,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDPS PrefixType = Mandatory NP @@ -30918,9 +33630,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 88u Opcode = Opcode.VADDSD PrefixType = Mandatory F2 @@ -30928,9 +33641,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 88u Opcode = Opcode.VADDSS PrefixType = Mandatory F3 @@ -30938,9 +33652,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -30950,9 +33665,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -30960,9 +33676,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULPD PrefixType = Mandatory P66 @@ -30970,9 +33687,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -30980,9 +33698,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -30990,9 +33709,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULPS PrefixType = Mandatory NP @@ -31000,9 +33720,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 89u Opcode = Opcode.VMULSD PrefixType = Mandatory F2 @@ -31010,9 +33731,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 89u Opcode = Opcode.VMULSS PrefixType = Mandatory F3 @@ -31020,9 +33742,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -31032,9 +33755,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -31042,9 +33766,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 90u Opcode = Opcode.VCVTPD2PS PrefixType = Mandatory P66 @@ -31052,9 +33777,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31062,9 +33788,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31072,9 +33799,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 90u Opcode = Opcode.VCVTPS2PD PrefixType = Mandatory NP @@ -31082,9 +33810,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 90u Opcode = Opcode.VCVTSD2SS PrefixType = Mandatory F2 @@ -31092,9 +33821,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 90u Opcode = Opcode.VCVTSS2SD PrefixType = Mandatory F3 @@ -31102,9 +33832,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -31114,9 +33845,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -31124,9 +33856,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTDQ2PS PrefixType = Mandatory NP @@ -31134,9 +33867,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31144,9 +33878,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31154,9 +33889,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTPS2DQ PrefixType = Mandatory P66 @@ -31164,9 +33900,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31174,9 +33911,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31184,9 +33922,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTTPS2DQ PrefixType = Mandatory F3 @@ -31194,9 +33933,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31204,9 +33944,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31214,9 +33955,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 91u Opcode = Opcode.VCVTQQ2PS PrefixType = Mandatory NP @@ -31224,9 +33966,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 92(0x5C) { OpcodeByte = 92u @@ -31236,9 +33979,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -31246,9 +33990,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBPD PrefixType = Mandatory P66 @@ -31256,9 +34001,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31266,9 +34012,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31276,9 +34023,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBPS PrefixType = Mandatory NP @@ -31286,9 +34034,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 92u Opcode = Opcode.VSUBSD PrefixType = Mandatory F2 @@ -31296,9 +34045,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 92u Opcode = Opcode.VSUBSS PrefixType = Mandatory F3 @@ -31306,9 +34056,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 93(0x5D) { OpcodeByte = 93u @@ -31318,9 +34069,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -31328,9 +34080,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINPD PrefixType = Mandatory P66 @@ -31338,9 +34091,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31348,9 +34102,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31358,9 +34113,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINPS PrefixType = Mandatory NP @@ -31368,9 +34124,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 93u Opcode = Opcode.VMINSD PrefixType = Mandatory F2 @@ -31378,9 +34135,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 93u Opcode = Opcode.VMINSS PrefixType = Mandatory F3 @@ -31388,9 +34146,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 94(0x5E) { OpcodeByte = 94u @@ -31400,9 +34159,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -31410,9 +34170,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVPD PrefixType = Mandatory P66 @@ -31420,9 +34181,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31430,9 +34192,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31440,9 +34203,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVPS PrefixType = Mandatory NP @@ -31450,9 +34214,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 94u Opcode = Opcode.VDIVSD PrefixType = Mandatory F2 @@ -31460,9 +34225,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 94u Opcode = Opcode.VDIVSS PrefixType = Mandatory F3 @@ -31470,9 +34236,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 95(0x5F) { OpcodeByte = 95u @@ -31482,9 +34249,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -31492,9 +34260,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXPD PrefixType = Mandatory P66 @@ -31502,9 +34271,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31512,9 +34282,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31522,9 +34293,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXPS PrefixType = Mandatory NP @@ -31532,9 +34304,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 95u Opcode = Opcode.VMAXSD PrefixType = Mandatory F2 @@ -31542,9 +34315,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 95u Opcode = Opcode.VMAXSS PrefixType = Mandatory F3 @@ -31552,9 +34326,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 96(0x60) { OpcodeByte = 96u @@ -31564,9 +34339,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -31574,9 +34350,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 96u Opcode = Opcode.VPUNPCKLBW PrefixType = Mandatory P66 @@ -31584,9 +34361,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 97(0x61) { OpcodeByte = 97u @@ -31596,9 +34374,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -31606,9 +34385,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 97u Opcode = Opcode.VPUNPCKLWD PrefixType = Mandatory P66 @@ -31616,9 +34396,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 98(0x62) { OpcodeByte = 98u @@ -31628,9 +34409,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -31638,9 +34420,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 98u Opcode = Opcode.VPUNPCKLDQ PrefixType = Mandatory P66 @@ -31648,9 +34431,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -31660,9 +34444,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -31670,9 +34455,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 99u Opcode = Opcode.VPACKSSWB PrefixType = Mandatory P66 @@ -31680,9 +34466,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -31692,9 +34479,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -31702,9 +34490,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 100u Opcode = Opcode.VPCMPGTB PrefixType = Mandatory P66 @@ -31712,9 +34501,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -31724,9 +34514,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -31734,9 +34525,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 101u Opcode = Opcode.VPCMPGTW PrefixType = Mandatory P66 @@ -31744,9 +34536,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -31756,9 +34549,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -31766,9 +34560,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VPCMPGTD PrefixType = Mandatory P66 @@ -31776,9 +34571,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -31788,9 +34584,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -31798,9 +34595,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 103u Opcode = Opcode.VPACKUSWB PrefixType = Mandatory P66 @@ -31808,9 +34606,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 104(0x68) { OpcodeByte = 104u @@ -31820,9 +34619,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -31830,9 +34630,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 104u Opcode = Opcode.VPUNPCKHBW PrefixType = Mandatory P66 @@ -31840,9 +34641,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 105(0x69) { OpcodeByte = 105u @@ -31852,9 +34654,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -31862,9 +34665,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 105u Opcode = Opcode.VPUNPCKHWD PrefixType = Mandatory P66 @@ -31872,9 +34676,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 106(0x6A) { OpcodeByte = 106u @@ -31884,9 +34689,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -31894,9 +34700,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 106u Opcode = Opcode.VPUNPCKHDQ PrefixType = Mandatory P66 @@ -31904,9 +34711,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 107(0x6B) { OpcodeByte = 107u @@ -31916,9 +34724,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -31926,9 +34735,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 107u Opcode = Opcode.VPACKSSDW PrefixType = Mandatory P66 @@ -31936,9 +34746,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 108(0x6C) { OpcodeByte = 108u @@ -31948,9 +34759,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -31958,9 +34770,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 108u Opcode = Opcode.VPUNPCKLQDQ PrefixType = Mandatory P66 @@ -31968,9 +34781,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 109(0x6D) { OpcodeByte = 109u @@ -31980,9 +34794,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -31990,9 +34805,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 109u Opcode = Opcode.VPUNPCKHQDQ PrefixType = Mandatory P66 @@ -32000,9 +34816,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 110(0x6E) { OpcodeByte = 110u @@ -32012,9 +34829,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz32 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 110u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -32022,9 +34840,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "R64/M64" |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 111(0x6F) { OpcodeByte = 111u @@ -32034,9 +34853,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -32044,9 +34864,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -32054,9 +34875,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32064,9 +34886,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32074,9 +34897,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -32084,9 +34908,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32094,9 +34919,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32104,9 +34930,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -32114,9 +34941,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32124,9 +34952,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32134,9 +34963,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -32144,9 +34974,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32154,9 +34985,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32164,9 +34996,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -32174,9 +35007,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32184,9 +35018,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32194,9 +35029,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 111u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -32204,9 +35040,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 112(0x70) { OpcodeByte = 112u @@ -32216,9 +35053,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -32226,9 +35064,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 112u Opcode = Opcode.VPSHUFD PrefixType = Mandatory P66 @@ -32236,9 +35075,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32246,9 +35086,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32256,9 +35097,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHUFHW PrefixType = Mandatory F3 @@ -32266,9 +35108,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32276,9 +35119,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32286,9 +35130,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHUFLW PrefixType = Mandatory F2 @@ -32296,9 +35141,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -32308,9 +35154,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -32318,9 +35165,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -32328,9 +35176,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32338,9 +35187,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32348,9 +35198,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -32358,9 +35209,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32368,9 +35220,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32378,9 +35231,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 113u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -32388,9 +35242,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.E + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -32400,9 +35255,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -32410,9 +35266,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -32420,9 +35277,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32430,9 +35288,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32440,9 +35299,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -32450,9 +35310,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32460,9 +35321,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32470,9 +35332,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -32480,9 +35343,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32490,9 +35354,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32500,9 +35365,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -32510,9 +35376,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32520,9 +35387,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32530,9 +35398,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32540,9 +35409,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32550,9 +35420,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLD PrefixType = Mandatory P66 @@ -32560,9 +35431,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPROLQ PrefixType = Mandatory P66 @@ -32570,9 +35442,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32580,9 +35453,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32590,9 +35464,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32600,9 +35475,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32610,9 +35486,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORD PrefixType = Mandatory P66 @@ -32620,9 +35497,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPRORQ PrefixType = Mandatory P66 @@ -32630,9 +35508,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -32642,9 +35521,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -32652,9 +35532,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSLLDQ PrefixType = Mandatory P66 @@ -32662,9 +35543,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32672,9 +35554,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32682,9 +35565,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -32692,9 +35576,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32702,9 +35587,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32712,9 +35598,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSRLDQ PrefixType = Mandatory P66 @@ -32722,9 +35609,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32732,9 +35620,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32742,9 +35631,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -32752,9 +35642,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.F + OpEn = OpEn.None Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 116(0x74) { OpcodeByte = 116u @@ -32764,9 +35655,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -32774,9 +35666,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 116u Opcode = Opcode.VPCMPEQB PrefixType = Mandatory P66 @@ -32784,9 +35677,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 117(0x75) { OpcodeByte = 117u @@ -32796,9 +35690,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -32806,9 +35701,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPCMPEQW PrefixType = Mandatory P66 @@ -32816,9 +35712,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -32828,9 +35725,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -32838,9 +35736,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPCMPEQD PrefixType = Mandatory P66 @@ -32848,9 +35747,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 119(0x77) |] @@ -32862,9 +35762,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP @@ -32872,9 +35773,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UDQ PrefixType = Mandatory NP @@ -32882,9 +35784,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32892,9 +35795,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32902,9 +35806,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPD2UQQ PrefixType = Mandatory P66 @@ -32912,9 +35817,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32922,9 +35828,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32932,9 +35839,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UDQ PrefixType = Mandatory NP @@ -32942,9 +35850,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32952,9 +35861,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32962,9 +35872,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 120u Opcode = Opcode.VCVTTPS2UQQ PrefixType = Mandatory P66 @@ -32972,9 +35883,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 120u Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 @@ -32982,9 +35894,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 120u Opcode = Opcode.VCVTTSD2USI PrefixType = Mandatory F2 @@ -32992,9 +35905,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 120u Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 @@ -33002,9 +35916,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 120u Opcode = Opcode.VCVTTSS2USI PrefixType = Mandatory F3 @@ -33012,9 +35927,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -33024,9 +35940,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP @@ -33034,9 +35951,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UDQ PrefixType = Mandatory NP @@ -33044,9 +35962,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33054,9 +35973,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33064,9 +35984,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPD2UQQ PrefixType = Mandatory P66 @@ -33074,9 +35995,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33084,9 +36006,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33094,9 +36017,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UDQ PrefixType = Mandatory NP @@ -33104,9 +36028,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33114,9 +36039,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33124,9 +36050,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 121u Opcode = Opcode.VCVTPS2UQQ PrefixType = Mandatory P66 @@ -33134,9 +36061,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 121u Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 @@ -33144,9 +36072,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 121u Opcode = Opcode.VCVTSD2USI PrefixType = Mandatory F2 @@ -33154,9 +36083,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 121u Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 @@ -33164,9 +36094,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Fixed } { OpcodeByte = 121u Opcode = Opcode.VCVTSS2USI PrefixType = Mandatory F3 @@ -33174,9 +36105,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Fixed } |] [| // index 122(0x7A) { OpcodeByte = 122u @@ -33186,9 +36118,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 @@ -33196,9 +36129,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTTPD2QQ PrefixType = Mandatory P66 @@ -33206,9 +36140,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33216,9 +36151,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33226,9 +36162,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTTPS2QQ PrefixType = Mandatory P66 @@ -33236,9 +36173,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33246,9 +36184,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33256,9 +36195,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PD PrefixType = Mandatory F3 @@ -33266,9 +36206,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33276,9 +36217,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33286,9 +36228,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUDQ2PS PrefixType = Mandatory F2 @@ -33296,9 +36239,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33306,9 +36250,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33316,9 +36261,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PD PrefixType = Mandatory F3 @@ -33326,9 +36272,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33336,9 +36283,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33346,9 +36294,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 122u Opcode = Opcode.VCVTUQQ2PS PrefixType = Mandatory F2 @@ -33356,9 +36305,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 123(0x7B) { OpcodeByte = 123u @@ -33368,9 +36318,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 123u Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 @@ -33378,9 +36329,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 123u Opcode = Opcode.VCVTPD2QQ PrefixType = Mandatory P66 @@ -33388,9 +36340,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33398,9 +36351,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33408,9 +36362,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 123u Opcode = Opcode.VCVTPS2QQ PrefixType = Mandatory P66 @@ -33418,9 +36373,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 @@ -33428,9 +36384,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SD PrefixType = Mandatory F2 @@ -33438,9 +36395,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 @@ -33448,9 +36406,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 123u Opcode = Opcode.VCVTUSI2SS PrefixType = Mandatory F3 @@ -33458,9 +36417,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 124(0x7C) |] @@ -33474,9 +36434,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory P66 @@ -33484,9 +36445,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 126u Opcode = Opcode.VMOVQ PrefixType = Mandatory F3 @@ -33494,9 +36456,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -33506,9 +36469,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -33516,9 +36480,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA32 PrefixType = Mandatory P66 @@ -33526,9 +36491,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33536,9 +36502,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33546,9 +36513,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQA64 PrefixType = Mandatory P66 @@ -33556,9 +36524,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33566,9 +36535,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33576,9 +36546,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU8 PrefixType = Mandatory F2 @@ -33586,9 +36557,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33596,9 +36568,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33606,9 +36579,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU16 PrefixType = Mandatory F2 @@ -33616,9 +36590,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33626,9 +36601,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33636,9 +36612,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU32 PrefixType = Mandatory F3 @@ -33646,9 +36623,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33656,9 +36634,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33666,9 +36645,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 127u Opcode = Opcode.VMOVDQU64 PrefixType = Mandatory F3 @@ -33676,9 +36656,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 128(0x80) |] @@ -33820,9 +36801,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -33830,9 +36812,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPPD PrefixType = Mandatory P66 @@ -33840,9 +36823,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33850,9 +36834,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33860,9 +36845,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPPS PrefixType = Mandatory NP @@ -33870,9 +36856,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.VCMPSD PrefixType = Mandatory F2 @@ -33880,9 +36867,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 194u Opcode = Opcode.VCMPSS PrefixType = Mandatory F3 @@ -33890,9 +36878,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 195(0xC3) |] @@ -33904,9 +36893,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 197(0xC5) { OpcodeByte = 197u @@ -33916,9 +36906,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 198(0xC6) { OpcodeByte = 198u @@ -33928,9 +36919,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -33938,9 +36930,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 198u Opcode = Opcode.VSHUFPD PrefixType = Mandatory P66 @@ -33948,9 +36941,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33958,9 +36952,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33968,9 +36963,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 198u Opcode = Opcode.VSHUFPS PrefixType = Mandatory NP @@ -33978,9 +36974,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 199(0xC7) |] @@ -34012,7 +37009,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -34022,7 +37020,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 209u Opcode = Opcode.VPSRLW PrefixType = Mandatory P66 @@ -34032,7 +37031,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 210(0xD2) { OpcodeByte = 210u @@ -34044,7 +37044,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -34054,7 +37055,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 210u Opcode = Opcode.VPSRLD PrefixType = Mandatory P66 @@ -34064,7 +37066,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 211(0xD3) { OpcodeByte = 211u @@ -34076,7 +37079,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -34086,7 +37090,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 211u Opcode = Opcode.VPSRLQ PrefixType = Mandatory P66 @@ -34096,7 +37101,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 212(0xD4) { OpcodeByte = 212u @@ -34106,9 +37112,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -34116,9 +37123,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 212u Opcode = Opcode.VPADDQ PrefixType = Mandatory P66 @@ -34126,9 +37134,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 213(0xD5) { OpcodeByte = 213u @@ -34138,9 +37147,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -34148,9 +37158,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 213u Opcode = Opcode.VPMULLW PrefixType = Mandatory P66 @@ -34158,9 +37169,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 214(0xD6) { OpcodeByte = 214u @@ -34170,9 +37182,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 215(0xD7) |] @@ -34184,9 +37197,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -34194,9 +37208,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 216u Opcode = Opcode.VPSUBUSB PrefixType = Mandatory P66 @@ -34204,9 +37219,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 217(0xD9) { OpcodeByte = 217u @@ -34216,9 +37232,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -34226,9 +37243,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 217u Opcode = Opcode.VPSUBUSW PrefixType = Mandatory P66 @@ -34236,9 +37254,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 218(0xDA) { OpcodeByte = 218u @@ -34248,9 +37267,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -34258,9 +37278,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 218u Opcode = Opcode.VPMINUB PrefixType = Mandatory P66 @@ -34268,9 +37289,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 219(0xDB) { OpcodeByte = 219u @@ -34280,9 +37302,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 219u Opcode = Opcode.VPANDD PrefixType = Mandatory P66 @@ -34290,9 +37313,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 219u Opcode = Opcode.VPANDD PrefixType = Mandatory P66 @@ -34300,9 +37324,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34310,9 +37335,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34320,9 +37346,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 219u Opcode = Opcode.VPANDQ PrefixType = Mandatory P66 @@ -34330,9 +37357,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 220(0xDC) { OpcodeByte = 220u @@ -34342,9 +37370,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -34352,9 +37381,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 220u Opcode = Opcode.VPADDUSB PrefixType = Mandatory P66 @@ -34362,9 +37392,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -34374,9 +37405,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -34384,9 +37416,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 221u Opcode = Opcode.VPADDUSW PrefixType = Mandatory P66 @@ -34394,9 +37427,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -34406,9 +37440,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -34416,9 +37451,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 222u Opcode = Opcode.VPMAXUB PrefixType = Mandatory P66 @@ -34426,9 +37462,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -34438,9 +37475,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34448,9 +37486,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34458,9 +37497,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34468,9 +37508,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34478,9 +37519,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 223u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -34488,9 +37530,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 224(0xE0) { OpcodeByte = 224u @@ -34500,9 +37543,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -34510,9 +37554,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 224u Opcode = Opcode.VPAVGB PrefixType = Mandatory P66 @@ -34520,9 +37565,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 225(0xE1) { OpcodeByte = 225u @@ -34534,7 +37580,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -34544,7 +37591,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 225u Opcode = Opcode.VPSRAW PrefixType = Mandatory P66 @@ -34554,7 +37602,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 226(0xE2) { OpcodeByte = 226u @@ -34566,7 +37615,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -34576,7 +37626,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 226u Opcode = Opcode.VPSRAD PrefixType = Mandatory P66 @@ -34586,7 +37637,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34596,7 +37648,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34606,7 +37659,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 226u Opcode = Opcode.VPSRAQ PrefixType = Mandatory P66 @@ -34616,7 +37670,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 227(0xE3) { OpcodeByte = 227u @@ -34626,9 +37681,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -34636,9 +37692,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 227u Opcode = Opcode.VPAVGW PrefixType = Mandatory P66 @@ -34646,9 +37703,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 228(0xE4) { OpcodeByte = 228u @@ -34658,9 +37716,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -34668,9 +37727,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 228u Opcode = Opcode.VPMULHUW PrefixType = Mandatory P66 @@ -34678,9 +37738,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 229(0xE5) { OpcodeByte = 229u @@ -34690,9 +37751,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -34700,9 +37762,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 229u Opcode = Opcode.VPMULHW PrefixType = Mandatory P66 @@ -34710,9 +37773,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 230(0xE6) { OpcodeByte = 230u @@ -34722,9 +37786,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -34732,9 +37797,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 230u Opcode = Opcode.VCVTDQ2PD PrefixType = Mandatory F3 @@ -34742,9 +37808,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Half } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34752,9 +37819,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34762,9 +37830,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTPD2DQ PrefixType = Mandatory F2 @@ -34772,9 +37841,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34782,9 +37852,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34792,9 +37863,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTTPD2DQ PrefixType = Mandatory P66 @@ -34802,9 +37874,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34812,9 +37885,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34822,9 +37896,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 230u Opcode = Opcode.VCVTQQ2PD PrefixType = Mandatory F3 @@ -34832,9 +37907,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 231(0xE7) { OpcodeByte = 231u @@ -34844,9 +37920,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -34854,9 +37931,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 231u Opcode = Opcode.VMOVNTDQ PrefixType = Mandatory P66 @@ -34864,9 +37942,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Mem Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 232(0xE8) { OpcodeByte = 232u @@ -34876,9 +37955,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -34886,9 +37966,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 232u Opcode = Opcode.VPSUBSB PrefixType = Mandatory P66 @@ -34896,9 +37977,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 233(0xE9) { OpcodeByte = 233u @@ -34908,9 +37990,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -34918,9 +38001,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 233u Opcode = Opcode.VPSUBSW PrefixType = Mandatory P66 @@ -34928,9 +38012,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 234(0xEA) { OpcodeByte = 234u @@ -34940,9 +38025,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -34950,9 +38036,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 234u Opcode = Opcode.VPMINSW PrefixType = Mandatory P66 @@ -34960,9 +38047,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 235(0xEB) { OpcodeByte = 235u @@ -34972,9 +38060,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 235u Opcode = Opcode.VPORD PrefixType = Mandatory P66 @@ -34982,9 +38071,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 235u Opcode = Opcode.VPORD PrefixType = Mandatory P66 @@ -34992,9 +38082,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35002,9 +38093,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35012,9 +38104,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 235u Opcode = Opcode.VPORQ PrefixType = Mandatory P66 @@ -35022,9 +38115,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 236(0xEC) { OpcodeByte = 236u @@ -35034,9 +38128,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -35044,9 +38139,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 236u Opcode = Opcode.VPADDSB PrefixType = Mandatory P66 @@ -35054,9 +38150,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 237(0xED) { OpcodeByte = 237u @@ -35066,9 +38163,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -35076,9 +38174,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 237u Opcode = Opcode.VPADDSW PrefixType = Mandatory P66 @@ -35086,9 +38185,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 238(0xEE) { OpcodeByte = 238u @@ -35098,9 +38198,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -35108,9 +38209,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 238u Opcode = Opcode.VPMAXSW PrefixType = Mandatory P66 @@ -35118,9 +38220,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 239(0xEF) { OpcodeByte = 239u @@ -35130,9 +38233,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 239u Opcode = Opcode.VPXORD PrefixType = Mandatory P66 @@ -35140,9 +38244,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 239u Opcode = Opcode.VPXORD PrefixType = Mandatory P66 @@ -35150,9 +38255,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35160,9 +38266,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35170,9 +38277,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 239u Opcode = Opcode.VPXORQ PrefixType = Mandatory P66 @@ -35180,9 +38288,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 240(0xF0) |] @@ -35196,7 +38305,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -35206,7 +38316,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 241u Opcode = Opcode.VPSLLW PrefixType = Mandatory P66 @@ -35216,7 +38327,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 242(0xF2) { OpcodeByte = 242u @@ -35228,7 +38340,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -35238,7 +38351,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 242u Opcode = Opcode.VPSLLD PrefixType = Mandatory P66 @@ -35248,7 +38362,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 243(0xF3) { OpcodeByte = 243u @@ -35260,7 +38375,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -35270,7 +38386,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } { OpcodeByte = 243u Opcode = Opcode.VPSLLQ PrefixType = Mandatory P66 @@ -35280,7 +38397,8 @@ let (evexTwo: InstructionCore[][]) = Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Mem128 } |] [| // index 244(0xF4) { OpcodeByte = 244u @@ -35290,9 +38408,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -35300,9 +38419,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 244u Opcode = Opcode.VPMULUDQ PrefixType = Mandatory P66 @@ -35310,9 +38430,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 245(0xF5) { OpcodeByte = 245u @@ -35322,9 +38443,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -35332,9 +38454,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 245u Opcode = Opcode.VPMADDWD PrefixType = Mandatory P66 @@ -35342,9 +38465,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 246(0xF6) { OpcodeByte = 246u @@ -35354,9 +38478,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -35364,9 +38489,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 246u Opcode = Opcode.VPSADBW PrefixType = Mandatory P66 @@ -35374,9 +38500,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 247(0xF7) |] @@ -35388,9 +38515,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -35398,9 +38526,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 248u Opcode = Opcode.VPSUBB PrefixType = Mandatory P66 @@ -35408,9 +38537,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 249(0xF9) { OpcodeByte = 249u @@ -35420,9 +38550,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -35430,9 +38561,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 249u Opcode = Opcode.VPSUBW PrefixType = Mandatory P66 @@ -35440,9 +38572,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 250(0xFA) { OpcodeByte = 250u @@ -35452,9 +38585,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -35462,9 +38596,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 250u Opcode = Opcode.VPSUBD PrefixType = Mandatory P66 @@ -35472,9 +38607,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 251(0xFB) { OpcodeByte = 251u @@ -35484,9 +38620,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -35494,9 +38631,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 251u Opcode = Opcode.VPSUBQ PrefixType = Mandatory P66 @@ -35504,9 +38642,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 252(0xFC) { OpcodeByte = 252u @@ -35516,9 +38655,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -35526,9 +38666,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 252u Opcode = Opcode.VPADDB PrefixType = Mandatory P66 @@ -35536,9 +38677,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 253(0xFD) { OpcodeByte = 253u @@ -35548,9 +38690,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -35558,9 +38701,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 253u Opcode = Opcode.VPADDW PrefixType = Mandatory P66 @@ -35568,9 +38712,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 254(0xFE) { OpcodeByte = 254u @@ -35580,9 +38725,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -35590,9 +38736,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 254u Opcode = Opcode.VPADDD PrefixType = Mandatory P66 @@ -35600,9 +38747,10 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 255(0xFF) |] @@ -35618,9 +38766,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -35628,9 +38777,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 0u Opcode = Opcode.VPSHUFB PrefixType = Mandatory P66 @@ -35638,9 +38788,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 1(0x01) |] @@ -35656,9 +38807,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -35666,9 +38818,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 4u Opcode = Opcode.VPMADDUBSW PrefixType = Mandatory P66 @@ -35676,9 +38829,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 5(0x05) |] @@ -35700,9 +38854,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -35710,9 +38865,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 11u Opcode = Opcode.VPMULHRSW PrefixType = Mandatory P66 @@ -35720,9 +38876,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 12(0x0C) { OpcodeByte = 12u @@ -35732,9 +38889,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -35742,9 +38900,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 12u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -35752,9 +38911,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 13(0x0D) { OpcodeByte = 13u @@ -35764,9 +38924,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -35774,9 +38935,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 13u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -35784,9 +38946,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 14(0x0E) |] @@ -35800,9 +38963,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 16u Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 @@ -35810,9 +38974,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 16u Opcode = Opcode.VPMOVUSWB PrefixType = Mandatory F3 @@ -35820,9 +38985,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35830,9 +38996,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35840,9 +39007,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 16u Opcode = Opcode.VPSRLVW PrefixType = Mandatory P66 @@ -35850,9 +39018,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 17(0x11) { OpcodeByte = 17u @@ -35862,9 +39031,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 17u Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 @@ -35872,9 +39042,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 17u Opcode = Opcode.VPMOVUSDB PrefixType = Mandatory F3 @@ -35882,9 +39053,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35892,9 +39064,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35902,9 +39075,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 17u Opcode = Opcode.VPSRAVW PrefixType = Mandatory P66 @@ -35912,9 +39086,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 18(0x12) { OpcodeByte = 18u @@ -35924,9 +39099,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 18u Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 @@ -35934,9 +39110,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 18u Opcode = Opcode.VPMOVUSQB PrefixType = Mandatory F3 @@ -35944,9 +39121,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35954,9 +39132,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35964,9 +39143,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 18u Opcode = Opcode.VPSLLVW PrefixType = Mandatory P66 @@ -35974,9 +39154,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 19(0x13) { OpcodeByte = 19u @@ -35986,9 +39167,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -35996,9 +39178,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 19u Opcode = Opcode.VCVTPH2PS PrefixType = Mandatory P66 @@ -36006,9 +39189,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36016,9 +39200,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36026,9 +39211,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 19u Opcode = Opcode.VPMOVUSDW PrefixType = Mandatory F3 @@ -36036,9 +39222,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 20(0x14) { OpcodeByte = 20u @@ -36048,9 +39235,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 20u Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 @@ -36058,9 +39246,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 20u Opcode = Opcode.VPMOVUSQW PrefixType = Mandatory F3 @@ -36068,9 +39257,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36078,9 +39268,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36088,9 +39279,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36098,9 +39290,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36108,9 +39301,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VPRORVD PrefixType = Mandatory P66 @@ -36118,9 +39312,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 20u Opcode = Opcode.VPRORVQ PrefixType = Mandatory P66 @@ -36128,9 +39323,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -36140,9 +39336,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 21u Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 @@ -36150,9 +39347,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 21u Opcode = Opcode.VPMOVUSQD PrefixType = Mandatory F3 @@ -36160,9 +39358,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36170,9 +39369,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36180,9 +39380,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36190,9 +39391,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36200,9 +39402,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VPROLVD PrefixType = Mandatory P66 @@ -36210,9 +39413,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 21u Opcode = Opcode.VPROLVQ PrefixType = Mandatory P66 @@ -36220,9 +39424,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -36232,9 +39437,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 22u Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 @@ -36242,9 +39448,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 22u Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 @@ -36252,9 +39459,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 22u Opcode = Opcode.VPERMPS PrefixType = Mandatory P66 @@ -36262,9 +39470,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 23(0x17) |] @@ -36276,9 +39485,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -36286,9 +39496,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 24u Opcode = Opcode.VBROADCASTSS PrefixType = Mandatory P66 @@ -36296,9 +39507,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -36308,9 +39520,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 25u Opcode = Opcode.VBROADCASTSD PrefixType = Mandatory P66 @@ -36318,9 +39531,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 25u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36328,9 +39542,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 25u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36338,9 +39553,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -36350,9 +39566,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36360,9 +39577,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36370,9 +39588,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 26u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36380,9 +39599,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -36392,9 +39612,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] - OpEn = OpEn.E + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 27u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -36402,9 +39623,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 28(0x1C) { OpcodeByte = 28u @@ -36414,9 +39636,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -36424,9 +39647,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 28u Opcode = Opcode.VPABSB PrefixType = Mandatory P66 @@ -36434,9 +39658,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 29(0x1D) { OpcodeByte = 29u @@ -36446,9 +39671,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -36456,9 +39682,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 29u Opcode = Opcode.VPABSW PrefixType = Mandatory P66 @@ -36466,9 +39693,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -36478,9 +39706,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -36488,9 +39717,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPABSD PrefixType = Mandatory P66 @@ -36498,9 +39728,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -36510,9 +39741,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 @@ -36520,9 +39752,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPABSQ PrefixType = Mandatory P66 @@ -36530,9 +39763,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -36542,9 +39776,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -36552,9 +39787,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 32u Opcode = Opcode.VPMOVSXBW PrefixType = Mandatory P66 @@ -36562,9 +39798,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36572,9 +39809,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36582,9 +39820,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 32u Opcode = Opcode.VPMOVSWB PrefixType = Mandatory F3 @@ -36592,9 +39831,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -36604,9 +39844,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -36614,9 +39855,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 33u Opcode = Opcode.VPMOVSXBD PrefixType = Mandatory P66 @@ -36624,9 +39866,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36634,9 +39877,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36644,9 +39888,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 33u Opcode = Opcode.VPMOVSDB PrefixType = Mandatory F3 @@ -36654,9 +39899,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -36666,9 +39912,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -36676,9 +39923,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 34u Opcode = Opcode.VPMOVSXBQ PrefixType = Mandatory P66 @@ -36686,9 +39934,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36696,9 +39945,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36706,9 +39956,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 34u Opcode = Opcode.VPMOVSQB PrefixType = Mandatory F3 @@ -36716,9 +39967,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -36728,9 +39980,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -36738,9 +39991,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 35u Opcode = Opcode.VPMOVSXWD PrefixType = Mandatory P66 @@ -36748,9 +40002,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36758,9 +40013,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36768,9 +40024,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 35u Opcode = Opcode.VPMOVSDW PrefixType = Mandatory F3 @@ -36778,9 +40035,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 36(0x24) { OpcodeByte = 36u @@ -36790,9 +40048,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -36800,9 +40059,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 36u Opcode = Opcode.VPMOVSXWQ PrefixType = Mandatory P66 @@ -36810,9 +40070,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36820,9 +40081,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36830,9 +40092,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 36u Opcode = Opcode.VPMOVSQW PrefixType = Mandatory F3 @@ -36840,9 +40103,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } |] [| // index 37(0x25) { OpcodeByte = 37u @@ -36852,9 +40116,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -36862,9 +40127,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 37u Opcode = Opcode.VPMOVSXDQ PrefixType = Mandatory P66 @@ -36872,9 +40138,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36882,9 +40149,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36892,9 +40160,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 37u Opcode = Opcode.VPMOVSQD PrefixType = Mandatory F3 @@ -36902,9 +40171,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 38(0x26) { OpcodeByte = 38u @@ -36914,9 +40184,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 @@ -36924,9 +40195,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTMB PrefixType = Mandatory P66 @@ -36934,9 +40206,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36944,9 +40217,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36954,9 +40228,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTMW PrefixType = Mandatory P66 @@ -36964,9 +40239,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36974,9 +40250,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36984,9 +40261,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMB PrefixType = Mandatory F3 @@ -36994,9 +40272,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37004,9 +40283,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37014,9 +40294,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 38u Opcode = Opcode.VPTESTNMW PrefixType = Mandatory F3 @@ -37024,9 +40305,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 39(0x27) { OpcodeByte = 39u @@ -37036,9 +40318,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 @@ -37046,9 +40329,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTMD PrefixType = Mandatory P66 @@ -37056,9 +40340,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37066,9 +40351,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37076,9 +40362,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTMQ PrefixType = Mandatory P66 @@ -37086,9 +40373,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37096,9 +40384,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37106,9 +40395,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMD PrefixType = Mandatory F3 @@ -37116,9 +40406,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37126,9 +40417,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37136,9 +40428,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 39u Opcode = Opcode.VPTESTNMQ PrefixType = Mandatory F3 @@ -37146,9 +40439,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 40(0x28) { OpcodeByte = 40u @@ -37158,9 +40452,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -37168,9 +40463,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 40u Opcode = Opcode.VPMULDQ PrefixType = Mandatory P66 @@ -37178,9 +40474,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37190,7 +40487,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37200,7 +40498,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2B PrefixType = Mandatory F3 @@ -37210,7 +40509,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37220,7 +40520,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37230,7 +40531,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 40u Opcode = Opcode.VPMOVM2W PrefixType = Mandatory F3 @@ -37240,7 +40542,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 41(0x29) { OpcodeByte = 41u @@ -37250,9 +40553,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -37260,9 +40564,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 41u Opcode = Opcode.VPCMPEQQ PrefixType = Mandatory P66 @@ -37270,9 +40575,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37282,7 +40588,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37292,7 +40599,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPMOVB2M PrefixType = Mandatory F3 @@ -37302,7 +40610,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37312,7 +40621,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37322,7 +40632,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 41u Opcode = Opcode.VPMOVW2M PrefixType = Mandatory F3 @@ -37332,7 +40643,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 42(0x2A) { OpcodeByte = 42u @@ -37342,9 +40654,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -37352,9 +40665,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 42u Opcode = Opcode.VMOVNTDQA PrefixType = Mandatory P66 @@ -37362,9 +40676,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37374,7 +40689,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37384,7 +40700,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 42u Opcode = Opcode.VPBROADCASTMB2Q PrefixType = Mandatory F3 @@ -37394,7 +40711,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 43(0x2B) { OpcodeByte = 43u @@ -37404,9 +40722,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -37414,9 +40733,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 43u Opcode = Opcode.VPACKUSDW PrefixType = Mandatory P66 @@ -37424,9 +40744,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 44(0x2C) { OpcodeByte = 44u @@ -37436,9 +40757,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 @@ -37446,9 +40768,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPD PrefixType = Mandatory P66 @@ -37456,9 +40779,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37466,9 +40790,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37476,9 +40801,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 44u Opcode = Opcode.VSCALEFPS PrefixType = Mandatory P66 @@ -37486,9 +40812,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 45(0x2D) { OpcodeByte = 45u @@ -37498,9 +40825,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 45u Opcode = Opcode.VSCALEFSS PrefixType = Mandatory P66 @@ -37508,9 +40836,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 46(0x2E) |] @@ -37524,9 +40853,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -37534,9 +40864,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 48u Opcode = Opcode.VPMOVZXBW PrefixType = Mandatory P66 @@ -37544,9 +40875,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37554,9 +40886,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37564,9 +40897,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 48u Opcode = Opcode.VPMOVWB PrefixType = Mandatory F3 @@ -37574,9 +40908,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 49(0x31) { OpcodeByte = 49u @@ -37586,9 +40921,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -37596,9 +40932,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 49u Opcode = Opcode.VPMOVZXBD PrefixType = Mandatory P66 @@ -37606,9 +40943,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37616,9 +40954,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37626,9 +40965,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 49u Opcode = Opcode.VPMOVDB PrefixType = Mandatory F3 @@ -37636,9 +40976,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } |] [| // index 50(0x32) { OpcodeByte = 50u @@ -37648,9 +40989,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -37658,9 +41000,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 50u Opcode = Opcode.VPMOVZXBQ PrefixType = Mandatory P66 @@ -37668,9 +41011,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37678,9 +41022,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37688,9 +41033,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } { OpcodeByte = 50u Opcode = Opcode.VPMOVQB PrefixType = Mandatory F3 @@ -37698,9 +41044,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.EighthMem } |] [| // index 51(0x33) { OpcodeByte = 51u @@ -37710,9 +41057,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -37720,9 +41068,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 51u Opcode = Opcode.VPMOVZXWD PrefixType = Mandatory P66 @@ -37730,9 +41079,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37740,9 +41090,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37750,9 +41101,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 51u Opcode = Opcode.VPMOVDW PrefixType = Mandatory F3 @@ -37760,9 +41112,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 52(0x34) { OpcodeByte = 52u @@ -37772,9 +41125,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -37782,9 +41136,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 52u Opcode = Opcode.VPMOVZXWQ PrefixType = Mandatory P66 @@ -37792,9 +41147,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37802,9 +41158,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37812,9 +41169,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } { OpcodeByte = 52u Opcode = Opcode.VPMOVQW PrefixType = Mandatory F3 @@ -37822,9 +41180,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.QuarterMem } |] [| // index 53(0x35) { OpcodeByte = 53u @@ -37834,9 +41193,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -37844,9 +41204,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 53u Opcode = Opcode.VPMOVZXDQ PrefixType = Mandatory P66 @@ -37854,9 +41215,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37864,9 +41226,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37874,9 +41237,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 53u Opcode = Opcode.VPMOVQD PrefixType = Mandatory F3 @@ -37884,9 +41248,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 54(0x36) { OpcodeByte = 54u @@ -37896,9 +41261,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 54u Opcode = Opcode.VPERMD PrefixType = Mandatory P66 @@ -37906,9 +41272,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 54u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -37916,9 +41283,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 54u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -37926,9 +41294,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 55(0x37) { OpcodeByte = 55u @@ -37938,9 +41307,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -37948,9 +41318,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 55u Opcode = Opcode.VPCMPGTQ PrefixType = Mandatory P66 @@ -37958,9 +41329,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 56(0x38) { OpcodeByte = 56u @@ -37970,9 +41342,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -37980,9 +41353,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 56u Opcode = Opcode.VPMINSB PrefixType = Mandatory P66 @@ -37990,9 +41364,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38002,7 +41377,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38012,7 +41388,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2D PrefixType = Mandatory F3 @@ -38022,7 +41399,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38032,7 +41410,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38042,7 +41421,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 56u Opcode = Opcode.VPMOVM2Q PrefixType = Mandatory F3 @@ -38052,7 +41432,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -38062,9 +41443,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -38072,9 +41454,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMINSD PrefixType = Mandatory P66 @@ -38082,9 +41465,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38092,9 +41476,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38102,9 +41487,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMINSQ PrefixType = Mandatory P66 @@ -38112,9 +41498,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38124,7 +41511,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38134,7 +41522,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMOVD2M PrefixType = Mandatory F3 @@ -38144,7 +41533,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38154,7 +41544,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38164,7 +41555,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 57u Opcode = Opcode.VPMOVQ2M PrefixType = Mandatory F3 @@ -38174,7 +41566,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "K1"; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -38184,9 +41577,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -38194,9 +41588,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 58u Opcode = Opcode.VPMINUW PrefixType = Mandatory P66 @@ -38204,9 +41599,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38216,7 +41612,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz128; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38226,7 +41623,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz256; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 58u Opcode = Opcode.VPBROADCASTMW2D PrefixType = Mandatory F3 @@ -38236,7 +41634,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Reg Sz512; Unknown "K1" |] OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -38246,9 +41645,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -38256,9 +41656,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 59u Opcode = Opcode.VPMINUD PrefixType = Mandatory P66 @@ -38266,9 +41667,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38276,9 +41678,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38286,9 +41689,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 59u Opcode = Opcode.VPMINUQ PrefixType = Mandatory P66 @@ -38296,9 +41700,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 60(0x3C) { OpcodeByte = 60u @@ -38308,9 +41713,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -38318,9 +41724,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 60u Opcode = Opcode.VPMAXSB PrefixType = Mandatory P66 @@ -38328,9 +41735,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 61(0x3D) { OpcodeByte = 61u @@ -38340,9 +41748,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -38350,9 +41759,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 61u Opcode = Opcode.VPMAXSD PrefixType = Mandatory P66 @@ -38360,9 +41770,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38370,9 +41781,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38380,9 +41792,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 61u Opcode = Opcode.VPMAXSQ PrefixType = Mandatory P66 @@ -38390,9 +41803,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.D + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 62(0x3E) { OpcodeByte = 62u @@ -38402,9 +41816,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -38412,9 +41827,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPMAXUW PrefixType = Mandatory P66 @@ -38422,9 +41838,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -38434,9 +41851,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -38444,9 +41862,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 63u Opcode = Opcode.VPMAXUD PrefixType = Mandatory P66 @@ -38454,9 +41873,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38464,9 +41884,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38474,9 +41895,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 63u Opcode = Opcode.VPMAXUQ PrefixType = Mandatory P66 @@ -38484,9 +41906,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 64(0x40) { OpcodeByte = 64u @@ -38496,9 +41919,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -38506,9 +41930,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 64u Opcode = Opcode.VPMULLD PrefixType = Mandatory P66 @@ -38516,9 +41941,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38526,9 +41952,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38536,9 +41963,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 64u Opcode = Opcode.VPMULLQ PrefixType = Mandatory P66 @@ -38546,9 +41974,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 65(0x41) |] @@ -38560,9 +41989,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 @@ -38570,9 +42000,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPD PrefixType = Mandatory P66 @@ -38580,9 +42011,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38590,9 +42022,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38600,9 +42033,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 66u Opcode = Opcode.VGETEXPPS PrefixType = Mandatory P66 @@ -38610,9 +42044,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -38622,9 +42057,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 67u Opcode = Opcode.VGETEXPSS PrefixType = Mandatory P66 @@ -38632,9 +42068,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -38644,9 +42081,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 @@ -38654,9 +42092,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTD PrefixType = Mandatory P66 @@ -38664,9 +42103,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38674,9 +42114,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38684,9 +42125,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 68u Opcode = Opcode.VPLZCNTQ PrefixType = Mandatory P66 @@ -38694,9 +42136,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 69(0x45) { OpcodeByte = 69u @@ -38706,9 +42149,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -38716,9 +42160,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 69u Opcode = Opcode.VPSRLVD PrefixType = Mandatory P66 @@ -38726,9 +42171,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38736,9 +42182,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38746,9 +42193,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 69u Opcode = Opcode.VPSRLVQ PrefixType = Mandatory P66 @@ -38756,9 +42204,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 70(0x46) { OpcodeByte = 70u @@ -38768,9 +42217,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -38778,9 +42228,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 70u Opcode = Opcode.VPSRAVD PrefixType = Mandatory P66 @@ -38788,9 +42239,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38798,9 +42250,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38808,9 +42261,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 70u Opcode = Opcode.VPSRAVQ PrefixType = Mandatory P66 @@ -38818,9 +42272,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 71(0x47) { OpcodeByte = 71u @@ -38830,9 +42285,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -38840,9 +42296,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 71u Opcode = Opcode.VPSLLVD PrefixType = Mandatory P66 @@ -38850,9 +42307,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38860,9 +42318,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38870,9 +42329,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 71u Opcode = Opcode.VPSLLVQ PrefixType = Mandatory P66 @@ -38880,9 +42340,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 72(0x48) |] @@ -38900,9 +42361,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 76u Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 @@ -38910,9 +42372,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 76u Opcode = Opcode.VRCP14PD PrefixType = Mandatory P66 @@ -38920,9 +42383,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38930,9 +42394,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38940,9 +42405,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 76u Opcode = Opcode.VRCP14PS PrefixType = Mandatory P66 @@ -38950,9 +42416,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 77(0x4D) { OpcodeByte = 77u @@ -38962,9 +42429,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 77u Opcode = Opcode.VRCP14SS PrefixType = Mandatory P66 @@ -38972,9 +42440,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 78(0x4E) { OpcodeByte = 78u @@ -38984,9 +42453,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 @@ -38994,9 +42464,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PD PrefixType = Mandatory P66 @@ -39004,9 +42475,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39014,9 +42486,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39024,9 +42497,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 78u Opcode = Opcode.VRSQRT14PS PrefixType = Mandatory P66 @@ -39034,9 +42508,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 79(0x4F) { OpcodeByte = 79u @@ -39046,9 +42521,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 79u Opcode = Opcode.VRSQRT14SS PrefixType = Mandatory P66 @@ -39056,9 +42532,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 80(0x50) { OpcodeByte = 80u @@ -39068,9 +42545,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -39078,9 +42556,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VPDPBUSD PrefixType = Mandatory P66 @@ -39088,9 +42567,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -39100,9 +42580,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -39110,9 +42591,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 81u Opcode = Opcode.VPDPBUSDS PrefixType = Mandatory P66 @@ -39120,9 +42602,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 82(0x52) { OpcodeByte = 82u @@ -39132,9 +42615,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 @@ -39142,9 +42626,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VDPBF16PS PrefixType = Mandatory F3 @@ -39152,9 +42637,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39162,9 +42648,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39172,9 +42659,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VPDPWSSD PrefixType = Mandatory P66 @@ -39182,9 +42670,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 82u Opcode = Opcode.VP4DPWSSD PrefixType = Mandatory F3 @@ -39192,9 +42681,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 83(0x53) { OpcodeByte = 83u @@ -39204,9 +42694,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -39214,9 +42705,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 83u Opcode = Opcode.VPDPWSSDS PrefixType = Mandatory P66 @@ -39224,9 +42716,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 83u Opcode = Opcode.VP4DPWSSDS PrefixType = Mandatory F3 @@ -39234,9 +42727,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 84(0x54) { OpcodeByte = 84u @@ -39246,9 +42740,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 @@ -39256,9 +42751,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTB PrefixType = Mandatory P66 @@ -39266,9 +42762,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39276,9 +42773,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39286,9 +42784,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 84u Opcode = Opcode.VPOPCNTW PrefixType = Mandatory P66 @@ -39296,9 +42795,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -39308,9 +42808,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 @@ -39318,9 +42819,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTD PrefixType = Mandatory P66 @@ -39328,9 +42830,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39338,9 +42841,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39348,9 +42852,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 85u Opcode = Opcode.VPOPCNTQ PrefixType = Mandatory P66 @@ -39358,9 +42863,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 86(0x56) |] @@ -39374,9 +42880,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -39384,9 +42891,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 88u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -39394,9 +42902,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 89(0x59) { OpcodeByte = 89u @@ -39406,9 +42915,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -39416,9 +42926,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 89u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -39426,9 +42937,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39436,9 +42948,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39446,9 +42959,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 89u Opcode = Opcode.VBROADCASTI32X2 PrefixType = Mandatory P66 @@ -39456,9 +42970,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 90(0x5A) { OpcodeByte = 90u @@ -39468,9 +42983,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI32X4 PrefixType = Mandatory P66 @@ -39478,9 +42994,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 @@ -39488,9 +43005,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 90u Opcode = Opcode.VBROADCASTI64X2 PrefixType = Mandatory P66 @@ -39498,9 +43016,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 91(0x5B) { OpcodeByte = 91u @@ -39510,9 +43029,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] - OpEn = OpEn.E + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 91u Opcode = Opcode.VBROADCASTI64X4 PrefixType = Mandatory P66 @@ -39520,9 +43040,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz256 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 92(0x5C) |] @@ -39544,9 +43065,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39554,9 +43076,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39564,9 +43087,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39574,9 +43098,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39584,9 +43109,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDB PrefixType = Mandatory P66 @@ -39594,9 +43120,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39604,9 +43131,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39614,9 +43142,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39624,9 +43153,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Mem Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39634,9 +43164,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39644,9 +43175,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Mem Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 98u Opcode = Opcode.VPEXPANDW PrefixType = Mandatory P66 @@ -39654,9 +43186,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 99(0x63) { OpcodeByte = 99u @@ -39666,9 +43199,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39676,9 +43210,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39686,9 +43221,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39696,9 +43232,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39706,9 +43243,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSB PrefixType = Mandatory P66 @@ -39716,9 +43254,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39726,9 +43265,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M128{K1}"; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39736,9 +43276,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39746,9 +43287,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M256{K1}"; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39756,9 +43298,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39766,9 +43309,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "M512{K1}"; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 99u Opcode = Opcode.VPCOMPRESSW PrefixType = Mandatory P66 @@ -39776,9 +43320,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.NA } |] [| // index 100(0x64) { OpcodeByte = 100u @@ -39788,9 +43333,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 @@ -39798,9 +43344,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMD PrefixType = Mandatory P66 @@ -39808,9 +43355,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39818,9 +43366,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39828,9 +43377,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 100u Opcode = Opcode.VPBLENDMQ PrefixType = Mandatory P66 @@ -39838,9 +43388,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 101(0x65) { OpcodeByte = 101u @@ -39850,9 +43401,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 @@ -39860,9 +43412,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPD PrefixType = Mandatory P66 @@ -39870,9 +43423,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39880,9 +43434,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39890,9 +43445,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 101u Opcode = Opcode.VBLENDMPS PrefixType = Mandatory P66 @@ -39900,9 +43456,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 102(0x66) { OpcodeByte = 102u @@ -39912,9 +43469,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 @@ -39922,9 +43480,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMB PrefixType = Mandatory P66 @@ -39932,9 +43491,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39942,9 +43502,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39952,9 +43513,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 102u Opcode = Opcode.VPBLENDMW PrefixType = Mandatory P66 @@ -39962,9 +43524,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 103(0x67) |] @@ -39976,9 +43539,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 @@ -39986,9 +43550,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTD PrefixType = Mandatory F3 @@ -39996,9 +43561,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40006,9 +43572,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40016,9 +43583,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 104u Opcode = Opcode.VP2INTERSECTQ PrefixType = Mandatory F3 @@ -40026,9 +43594,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 105(0x69) |] @@ -40052,9 +43621,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 @@ -40062,9 +43632,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHLDVW PrefixType = Mandatory P66 @@ -40072,9 +43643,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -40084,9 +43656,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 @@ -40094,9 +43667,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVD PrefixType = Mandatory P66 @@ -40104,9 +43678,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40114,9 +43689,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40124,9 +43700,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDVQ PrefixType = Mandatory P66 @@ -40134,9 +43711,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -40146,9 +43724,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 @@ -40156,9 +43735,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VCVTNE2PS2BF16 PrefixType = Mandatory F3 @@ -40166,9 +43746,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40176,9 +43757,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40186,9 +43768,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VCVTNEPS2BF16 PrefixType = Mandatory F3 @@ -40196,9 +43779,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40206,9 +43790,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40216,9 +43801,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 114u Opcode = Opcode.VPSHRDVW PrefixType = Mandatory P66 @@ -40226,9 +43812,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -40238,9 +43825,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 @@ -40248,9 +43836,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVD PrefixType = Mandatory P66 @@ -40258,9 +43847,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40268,9 +43858,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40278,9 +43869,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDVQ PrefixType = Mandatory P66 @@ -40288,9 +43880,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 116(0x74) |] @@ -40302,9 +43895,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 @@ -40312,9 +43906,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPERMI2B PrefixType = Mandatory P66 @@ -40322,9 +43917,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40332,9 +43928,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40342,9 +43939,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 117u Opcode = Opcode.VPERMI2W PrefixType = Mandatory P66 @@ -40352,9 +43950,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 118(0x76) { OpcodeByte = 118u @@ -40364,9 +43963,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 @@ -40374,9 +43974,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPERMI2D PrefixType = Mandatory P66 @@ -40384,9 +43985,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40394,9 +43996,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40404,9 +44007,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 118u Opcode = Opcode.VPERMI2Q PrefixType = Mandatory P66 @@ -40414,9 +44018,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 119(0x77) { OpcodeByte = 119u @@ -40426,9 +44031,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 @@ -40436,9 +44042,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PS PrefixType = Mandatory P66 @@ -40446,9 +44053,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40456,9 +44064,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40466,9 +44075,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 119u Opcode = Opcode.VPERMI2PD PrefixType = Mandatory P66 @@ -40476,9 +44086,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 120(0x78) { OpcodeByte = 120u @@ -40488,9 +44099,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40498,9 +44110,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 120u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40508,9 +44121,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RMdiff(Sz128, Sz8) |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 121(0x79) { OpcodeByte = 121u @@ -40520,9 +44134,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2/M16" |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40530,9 +44145,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Unknown "XMM2/M16" |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 121u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40540,9 +44156,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "XMM2/M16" |] - OpEn = OpEn.B + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 122(0x7A) { OpcodeByte = 122u @@ -40552,9 +44169,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 122u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40562,9 +44180,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 122u Opcode = Opcode.VPBROADCASTB PrefixType = Mandatory P66 @@ -40572,9 +44191,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 123(0x7B) { OpcodeByte = 123u @@ -40584,9 +44204,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 123u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40594,9 +44215,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 123u Opcode = Opcode.VPBROADCASTW PrefixType = Mandatory P66 @@ -40604,9 +44226,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 124(0x7C) { OpcodeByte = 124u @@ -40616,9 +44239,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -40626,9 +44250,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTD PrefixType = Mandatory P66 @@ -40636,9 +44261,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz32 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40646,9 +44272,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40656,9 +44283,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 124u Opcode = Opcode.VPBROADCASTQ PrefixType = Mandatory P66 @@ -40666,9 +44294,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz64 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 125(0x7D) { OpcodeByte = 125u @@ -40678,9 +44307,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 125u Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 @@ -40688,9 +44318,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 125u Opcode = Opcode.VPERMT2B PrefixType = Mandatory P66 @@ -40698,9 +44329,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40708,9 +44340,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40718,9 +44351,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 125u Opcode = Opcode.VPERMT2W PrefixType = Mandatory P66 @@ -40728,9 +44362,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 126(0x7E) { OpcodeByte = 126u @@ -40740,9 +44375,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 126u Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 @@ -40750,9 +44386,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 126u Opcode = Opcode.VPERMT2D PrefixType = Mandatory P66 @@ -40760,9 +44397,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40770,9 +44408,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40780,9 +44419,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 126u Opcode = Opcode.VPERMT2Q PrefixType = Mandatory P66 @@ -40790,9 +44430,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 127(0x7F) { OpcodeByte = 127u @@ -40802,9 +44443,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 @@ -40812,9 +44454,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PS PrefixType = Mandatory P66 @@ -40822,9 +44465,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40832,9 +44476,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40842,9 +44487,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 127u Opcode = Opcode.VPERMT2PD PrefixType = Mandatory P66 @@ -40852,9 +44498,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 128(0x80) |] @@ -40870,9 +44517,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 131u Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 @@ -40880,9 +44528,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 131u Opcode = Opcode.VPMULTISHIFTQB PrefixType = Mandatory P66 @@ -40890,9 +44539,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 132(0x84) |] @@ -40910,9 +44560,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 @@ -40920,9 +44571,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPD PrefixType = Mandatory P66 @@ -40930,9 +44582,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40940,9 +44593,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40950,9 +44604,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 136u Opcode = Opcode.VEXPANDPS PrefixType = Mandatory P66 @@ -40960,9 +44615,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 137(0x89) { OpcodeByte = 137u @@ -40972,9 +44628,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 @@ -40982,9 +44639,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDD PrefixType = Mandatory P66 @@ -40992,9 +44650,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41002,9 +44661,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41012,9 +44672,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 137u Opcode = Opcode.VPEXPANDQ PrefixType = Mandatory P66 @@ -41022,9 +44683,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 138(0x8A) { OpcodeByte = 138u @@ -41034,9 +44696,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 @@ -41044,9 +44707,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPD PrefixType = Mandatory P66 @@ -41054,9 +44718,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41064,9 +44729,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41074,9 +44740,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 138u Opcode = Opcode.VCOMPRESSPS PrefixType = Mandatory P66 @@ -41084,9 +44751,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 139(0x8B) { OpcodeByte = 139u @@ -41096,9 +44764,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 @@ -41106,9 +44775,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSD PrefixType = Mandatory P66 @@ -41116,9 +44786,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41126,9 +44797,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41136,9 +44808,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 139u Opcode = Opcode.VPCOMPRESSQ PrefixType = Mandatory P66 @@ -41146,9 +44819,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz512; Reg Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.MR Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 140(0x8C) |] @@ -41160,9 +44834,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 141u Opcode = Opcode.VPERMB PrefixType = Mandatory P66 @@ -41170,9 +44845,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 141u Opcode = Opcode.VPERMB PrefixType = Mandatory P66 @@ -41180,9 +44856,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41190,9 +44867,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41200,9 +44878,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 141u Opcode = Opcode.VPERMW PrefixType = Mandatory P66 @@ -41210,9 +44889,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 142(0x8E) |] @@ -41224,9 +44904,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 143u Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 @@ -41234,9 +44915,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 143u Opcode = Opcode.VPSHUFBITQMB PrefixType = Mandatory P66 @@ -41244,9 +44926,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 144(0x90) { OpcodeByte = 144u @@ -41258,7 +44941,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -41268,7 +44952,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDD PrefixType = Mandatory P66 @@ -41278,7 +44963,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41288,7 +44974,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41298,7 +44985,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 144u Opcode = Opcode.VPGATHERDQ PrefixType = Mandatory P66 @@ -41308,7 +44996,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 145(0x91) { OpcodeByte = 145u @@ -41320,7 +45009,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -41330,7 +45020,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQD PrefixType = Mandatory P66 @@ -41340,7 +45031,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41350,7 +45042,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41360,7 +45053,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 145u Opcode = Opcode.VPGATHERQQ PrefixType = Mandatory P66 @@ -41370,7 +45064,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 146(0x92) { OpcodeByte = 146u @@ -41382,7 +45077,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -41392,7 +45088,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPS PrefixType = Mandatory P66 @@ -41402,7 +45099,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41412,7 +45110,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41422,7 +45121,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 146u Opcode = Opcode.VGATHERDPD PrefixType = Mandatory P66 @@ -41432,7 +45132,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 147(0x93) { OpcodeByte = 147u @@ -41444,7 +45145,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -41454,7 +45156,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPS PrefixType = Mandatory P66 @@ -41464,7 +45167,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41474,7 +45178,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41484,7 +45189,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 147u Opcode = Opcode.VGATHERQPD PrefixType = Mandatory P66 @@ -41494,7 +45200,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 148(0x94) |] @@ -41508,9 +45215,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -41518,9 +45226,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PD PrefixType = Mandatory P66 @@ -41528,9 +45237,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41538,9 +45248,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41548,9 +45259,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 150u Opcode = Opcode.VFMADDSUB132PS PrefixType = Mandatory P66 @@ -41558,9 +45270,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 151(0x97) { OpcodeByte = 151u @@ -41570,9 +45283,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -41580,9 +45294,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PD PrefixType = Mandatory P66 @@ -41590,9 +45305,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41600,9 +45316,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41610,9 +45327,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 151u Opcode = Opcode.VFMSUBADD132PS PrefixType = Mandatory P66 @@ -41620,9 +45338,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 152(0x98) { OpcodeByte = 152u @@ -41632,9 +45351,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -41642,9 +45362,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PD PrefixType = Mandatory P66 @@ -41652,9 +45373,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41662,9 +45384,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41672,9 +45395,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 152u Opcode = Opcode.VFMADD132PS PrefixType = Mandatory P66 @@ -41682,9 +45406,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 153(0x99) { OpcodeByte = 153u @@ -41694,9 +45419,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 153u Opcode = Opcode.VFMADD132SS PrefixType = Mandatory P66 @@ -41704,9 +45430,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 154(0x9A) { OpcodeByte = 154u @@ -41716,9 +45443,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -41726,9 +45454,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PD PrefixType = Mandatory P66 @@ -41736,9 +45465,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41746,9 +45476,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41756,9 +45487,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.VFMSUB132PS PrefixType = Mandatory P66 @@ -41766,9 +45498,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 154u Opcode = Opcode.V4FMADDPS PrefixType = Mandatory F3 @@ -41776,9 +45509,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 155(0x9B) { OpcodeByte = 155u @@ -41788,9 +45522,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 155u Opcode = Opcode.VFMSUB132SS PrefixType = Mandatory P66 @@ -41798,9 +45533,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 155u Opcode = Opcode.V4FMADDSS PrefixType = Mandatory F3 @@ -41808,9 +45544,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 156(0x9C) { OpcodeByte = 156u @@ -41820,9 +45557,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -41830,9 +45568,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PD PrefixType = Mandatory P66 @@ -41840,9 +45579,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41850,9 +45590,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41860,9 +45601,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 156u Opcode = Opcode.VFNMADD132PS PrefixType = Mandatory P66 @@ -41870,9 +45612,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 157(0x9D) { OpcodeByte = 157u @@ -41882,9 +45625,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 157u Opcode = Opcode.VFNMADD132SS PrefixType = Mandatory P66 @@ -41892,9 +45636,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 158(0x9E) { OpcodeByte = 158u @@ -41904,9 +45649,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -41914,9 +45660,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PD PrefixType = Mandatory P66 @@ -41924,9 +45671,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41934,9 +45682,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41944,9 +45693,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 158u Opcode = Opcode.VFNMSUB132PS PrefixType = Mandatory P66 @@ -41954,9 +45704,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 159(0x9F) { OpcodeByte = 159u @@ -41966,9 +45717,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 159u Opcode = Opcode.VFNMSUB132SS PrefixType = Mandatory P66 @@ -41976,9 +45728,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 160(0xA0) { OpcodeByte = 160u @@ -41990,7 +45743,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 @@ -42000,7 +45754,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDD PrefixType = Mandatory P66 @@ -42010,7 +45765,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42020,7 +45776,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42030,7 +45787,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32X{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 160u Opcode = Opcode.VPSCATTERDQ PrefixType = Mandatory P66 @@ -42040,7 +45798,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 161(0xA1) { OpcodeByte = 161u @@ -42052,7 +45811,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 @@ -42062,7 +45822,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQD PrefixType = Mandatory P66 @@ -42072,7 +45833,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42082,7 +45844,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42092,7 +45855,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 161u Opcode = Opcode.VPSCATTERQQ PrefixType = Mandatory P66 @@ -42102,7 +45866,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 162(0xA2) { OpcodeByte = 162u @@ -42114,7 +45879,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 @@ -42124,7 +45890,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPS PrefixType = Mandatory P66 @@ -42134,7 +45901,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42144,7 +45912,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42154,7 +45923,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 162u Opcode = Opcode.VSCATTERDPD PrefixType = Mandatory P66 @@ -42164,7 +45934,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 163(0xA3) { OpcodeByte = 163u @@ -42176,7 +45947,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 @@ -42186,7 +45958,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPS PrefixType = Mandatory P66 @@ -42196,7 +45969,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42206,7 +45980,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42216,7 +45991,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 163u Opcode = Opcode.VSCATTERQPD PrefixType = Mandatory P66 @@ -42226,7 +46002,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 164(0xA4) |] @@ -42240,9 +46017,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -42250,9 +46028,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PD PrefixType = Mandatory P66 @@ -42260,9 +46039,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42270,9 +46050,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42280,9 +46061,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 166u Opcode = Opcode.VFMADDSUB213PS PrefixType = Mandatory P66 @@ -42290,9 +46072,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 167(0xA7) { OpcodeByte = 167u @@ -42302,9 +46085,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -42312,9 +46096,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PD PrefixType = Mandatory P66 @@ -42322,9 +46107,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42332,9 +46118,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42342,9 +46129,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 167u Opcode = Opcode.VFMSUBADD213PS PrefixType = Mandatory P66 @@ -42352,9 +46140,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 168(0xA8) { OpcodeByte = 168u @@ -42364,9 +46153,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -42374,9 +46164,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PD PrefixType = Mandatory P66 @@ -42384,9 +46175,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42394,9 +46186,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42404,9 +46197,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 168u Opcode = Opcode.VFMADD213PS PrefixType = Mandatory P66 @@ -42414,9 +46208,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 169(0xA9) { OpcodeByte = 169u @@ -42426,9 +46221,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 169u Opcode = Opcode.VFMADD213SS PrefixType = Mandatory P66 @@ -42436,9 +46232,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 170(0xAA) { OpcodeByte = 170u @@ -42448,9 +46245,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -42458,9 +46256,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PD PrefixType = Mandatory P66 @@ -42468,9 +46267,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42478,9 +46278,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42488,9 +46289,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.VFMSUB213PS PrefixType = Mandatory P66 @@ -42498,9 +46300,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 170u Opcode = Opcode.V4FNMADDPS PrefixType = Mandatory F3 @@ -42508,9 +46311,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 171(0xAB) { OpcodeByte = 171u @@ -42520,9 +46324,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 171u Opcode = Opcode.VFMSUB213SS PrefixType = Mandatory P66 @@ -42530,9 +46335,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 171u Opcode = Opcode.V4FNMADDSS PrefixType = Mandatory F3 @@ -42540,9 +46346,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1_4X } |] [| // index 172(0xAC) { OpcodeByte = 172u @@ -42552,9 +46359,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -42562,9 +46370,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PD PrefixType = Mandatory P66 @@ -42572,9 +46381,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42582,9 +46392,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42592,9 +46403,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 172u Opcode = Opcode.VFNMADD213PS PrefixType = Mandatory P66 @@ -42602,9 +46414,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 173(0xAD) { OpcodeByte = 173u @@ -42614,9 +46427,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 173u Opcode = Opcode.VFNMADD213SS PrefixType = Mandatory P66 @@ -42624,9 +46438,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 174(0xAE) { OpcodeByte = 174u @@ -42636,9 +46451,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -42646,9 +46462,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PD PrefixType = Mandatory P66 @@ -42656,9 +46473,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42666,9 +46484,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42676,9 +46495,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 174u Opcode = Opcode.VFNMSUB213PS PrefixType = Mandatory P66 @@ -42686,9 +46506,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 175(0xAF) { OpcodeByte = 175u @@ -42698,9 +46519,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 175u Opcode = Opcode.VFNMSUB213SS PrefixType = Mandatory P66 @@ -42708,9 +46530,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 176(0xB0) |] @@ -42728,9 +46551,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -42738,9 +46562,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 180u Opcode = Opcode.VPMADD52LUQ PrefixType = Mandatory P66 @@ -42748,9 +46573,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 181(0xB5) { OpcodeByte = 181u @@ -42760,9 +46586,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -42770,9 +46597,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 181u Opcode = Opcode.VPMADD52HUQ PrefixType = Mandatory P66 @@ -42780,9 +46608,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 182(0xB6) { OpcodeByte = 182u @@ -42792,9 +46621,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -42802,9 +46632,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PD PrefixType = Mandatory P66 @@ -42812,9 +46643,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42822,9 +46654,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42832,9 +46665,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 182u Opcode = Opcode.VFMADDSUB231PS PrefixType = Mandatory P66 @@ -42842,9 +46676,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 183(0xB7) { OpcodeByte = 183u @@ -42854,9 +46689,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -42864,9 +46700,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PD PrefixType = Mandatory P66 @@ -42874,9 +46711,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42884,9 +46722,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42894,9 +46733,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 183u Opcode = Opcode.VFMSUBADD231PS PrefixType = Mandatory P66 @@ -42904,9 +46744,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 184(0xB8) { OpcodeByte = 184u @@ -42916,9 +46757,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -42926,9 +46768,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PD PrefixType = Mandatory P66 @@ -42936,9 +46779,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42946,9 +46790,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42956,9 +46801,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 184u Opcode = Opcode.VFMADD231PS PrefixType = Mandatory P66 @@ -42966,9 +46812,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 185(0xB9) { OpcodeByte = 185u @@ -42978,9 +46825,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 185u Opcode = Opcode.VFMADD231SS PrefixType = Mandatory P66 @@ -42988,9 +46836,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 186(0xBA) { OpcodeByte = 186u @@ -43000,9 +46849,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -43010,9 +46860,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PD PrefixType = Mandatory P66 @@ -43020,9 +46871,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43030,9 +46882,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43040,9 +46893,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 186u Opcode = Opcode.VFMSUB231PS PrefixType = Mandatory P66 @@ -43050,9 +46904,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 187(0xBB) { OpcodeByte = 187u @@ -43062,9 +46917,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 187u Opcode = Opcode.VFMSUB231SS PrefixType = Mandatory P66 @@ -43072,9 +46928,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 188(0xBC) { OpcodeByte = 188u @@ -43084,9 +46941,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -43094,9 +46952,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PD PrefixType = Mandatory P66 @@ -43104,9 +46963,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43114,9 +46974,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43124,9 +46985,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 188u Opcode = Opcode.VFNMADD231PS PrefixType = Mandatory P66 @@ -43134,9 +46996,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 189(0xBD) { OpcodeByte = 189u @@ -43146,9 +47009,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 189u Opcode = Opcode.VFNMADD231SS PrefixType = Mandatory P66 @@ -43156,9 +47020,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 190(0xBE) { OpcodeByte = 190u @@ -43168,9 +47033,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -43178,9 +47044,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PD PrefixType = Mandatory P66 @@ -43188,9 +47055,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43198,9 +47066,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43208,9 +47077,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 190u Opcode = Opcode.VFNMSUB231PS PrefixType = Mandatory P66 @@ -43218,9 +47088,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 191(0xBF) { OpcodeByte = 191u @@ -43230,9 +47101,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 191u Opcode = Opcode.VFNMSUB231SS PrefixType = Mandatory P66 @@ -43240,9 +47112,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.B + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 192(0xC0) |] @@ -43260,9 +47133,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 @@ -43270,9 +47144,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTD PrefixType = Mandatory P66 @@ -43280,9 +47155,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43290,9 +47166,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43300,9 +47177,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 196u Opcode = Opcode.VPCONFLICTQ PrefixType = Mandatory P66 @@ -43310,9 +47188,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 197(0xC5) |] @@ -43326,7 +47205,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF0DPD PrefixType = Mandatory P66 @@ -43336,7 +47216,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF1DPS PrefixType = Mandatory P66 @@ -43346,7 +47227,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VGATHERPF1DPD PrefixType = Mandatory P66 @@ -43356,7 +47238,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF0DPS PrefixType = Mandatory P66 @@ -43366,7 +47249,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF0DPD PrefixType = Mandatory P66 @@ -43376,7 +47260,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF1DPS PrefixType = Mandatory P66 @@ -43386,7 +47271,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 198u Opcode = Opcode.VSCATTERPF1DPD PrefixType = Mandatory P66 @@ -43396,7 +47282,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM32Y{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 199(0xC7) { OpcodeByte = 199u @@ -43408,7 +47295,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF0QPD PrefixType = Mandatory P66 @@ -43418,7 +47306,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF1QPS PrefixType = Mandatory P66 @@ -43428,7 +47317,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VGATHERPF1QPD PrefixType = Mandatory P66 @@ -43438,7 +47328,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF0QPS PrefixType = Mandatory P66 @@ -43448,7 +47339,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF0QPD PrefixType = Mandatory P66 @@ -43458,7 +47350,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF1QPS PrefixType = Mandatory P66 @@ -43468,7 +47361,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 199u Opcode = Opcode.VSCATTERPF1QPD PrefixType = Mandatory P66 @@ -43478,7 +47372,8 @@ let (evexThree38: InstructionCore[][]) = Operands = [| Unknown "VM64Z{K1}" |] OpEn = OpEn.A Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 200(0xC8) { OpcodeByte = 200u @@ -43488,9 +47383,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 200u Opcode = Opcode.VEXP2PS PrefixType = Mandatory P66 @@ -43498,9 +47394,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 201(0xC9) |] @@ -43512,9 +47409,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 202u Opcode = Opcode.VRCP28PS PrefixType = Mandatory P66 @@ -43522,9 +47420,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 203(0xCB) { OpcodeByte = 203u @@ -43534,9 +47433,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 203u Opcode = Opcode.VRCP28SS PrefixType = Mandatory P66 @@ -43544,9 +47444,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 204(0xCC) { OpcodeByte = 204u @@ -43556,9 +47457,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 204u Opcode = Opcode.VRSQRT28PS PrefixType = Mandatory P66 @@ -43566,9 +47468,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 205(0xCD) { OpcodeByte = 205u @@ -43578,9 +47481,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 205u Opcode = Opcode.VRSQRT28SS PrefixType = Mandatory P66 @@ -43588,9 +47492,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 206(0xCE) |] @@ -43602,9 +47507,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -43612,9 +47518,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 207u Opcode = Opcode.VGF2P8MULB PrefixType = Mandatory P66 @@ -43622,9 +47529,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 208(0xD0) |] @@ -43658,9 +47566,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -43668,9 +47577,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 220u Opcode = Opcode.VAESENC PrefixType = Mandatory P66 @@ -43678,9 +47588,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 221(0xDD) { OpcodeByte = 221u @@ -43690,9 +47601,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -43700,9 +47612,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 221u Opcode = Opcode.VAESENCLAST PrefixType = Mandatory P66 @@ -43710,9 +47623,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 222(0xDE) { OpcodeByte = 222u @@ -43722,9 +47636,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -43732,9 +47647,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 222u Opcode = Opcode.VAESDEC PrefixType = Mandatory P66 @@ -43742,9 +47658,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 223(0xDF) { OpcodeByte = 223u @@ -43754,9 +47671,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -43764,9 +47682,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 223u Opcode = Opcode.VAESDECLAST PrefixType = Mandatory P66 @@ -43774,9 +47693,10 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] - OpEn = OpEn.C + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 224(0xE0) |] @@ -43854,9 +47774,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 0u Opcode = Opcode.VPERMQ PrefixType = Mandatory P66 @@ -43864,9 +47785,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 1(0x01) { OpcodeByte = 1u @@ -43876,9 +47798,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 1u Opcode = Opcode.VPERMPD PrefixType = Mandatory P66 @@ -43886,9 +47809,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 2(0x02) |] @@ -43900,9 +47824,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43910,9 +47835,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 3u Opcode = Opcode.VALIGND PrefixType = Mandatory P66 @@ -43920,9 +47846,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43930,9 +47857,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 3u Opcode = Opcode.VALIGND PrefixType = Mandatory P66 @@ -43940,9 +47868,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 3u Opcode = Opcode.VALIGNQ PrefixType = Mandatory P66 @@ -43950,9 +47879,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 4(0x04) { OpcodeByte = 4u @@ -43962,9 +47892,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -43972,9 +47903,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 4u Opcode = Opcode.VPERMILPS PrefixType = Mandatory P66 @@ -43982,9 +47914,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 5(0x05) { OpcodeByte = 5u @@ -43994,9 +47927,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -44004,9 +47938,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 5u Opcode = Opcode.VPERMILPD PrefixType = Mandatory P66 @@ -44014,9 +47949,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 6(0x06) |] @@ -44030,9 +47966,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 8u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44040,9 +47977,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 8u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44050,9 +47988,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44060,9 +47999,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44070,9 +48010,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 8u Opcode = Opcode.VRNDSCALEPS PrefixType = Mandatory P66 @@ -44080,9 +48021,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 9(0x09) { OpcodeByte = 9u @@ -44092,9 +48034,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 9u Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 @@ -44102,9 +48045,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 9u Opcode = Opcode.VRNDSCALEPD PrefixType = Mandatory P66 @@ -44112,9 +48056,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 10(0x0A) { OpcodeByte = 10u @@ -44124,9 +48069,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Scalar } { OpcodeByte = 10u Opcode = Opcode.VRNDSCALESS PrefixType = Mandatory P66 @@ -44134,9 +48080,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 11(0x0B) { OpcodeByte = 11u @@ -44146,9 +48093,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 12(0x0C) |] @@ -44164,9 +48112,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -44174,9 +48123,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 15u Opcode = Opcode.VPALIGNR PrefixType = Mandatory P66 @@ -44184,9 +48134,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 16(0x10) |] @@ -44204,9 +48155,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 21(0x15) { OpcodeByte = 21u @@ -44216,9 +48168,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 22(0x16) { OpcodeByte = 22u @@ -44228,9 +48181,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 22u Opcode = Opcode.VPEXTRQ PrefixType = Mandatory P66 @@ -44238,9 +48192,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 23(0x17) { OpcodeByte = 23u @@ -44250,9 +48205,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 24(0x18) { OpcodeByte = 24u @@ -44262,9 +48218,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 24u Opcode = Opcode.VINSERTF32X4 PrefixType = Mandatory P66 @@ -44272,9 +48229,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 24u Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 @@ -44282,9 +48240,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 24u Opcode = Opcode.VINSERTF64X2 PrefixType = Mandatory P66 @@ -44292,9 +48251,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 25(0x19) { OpcodeByte = 25u @@ -44304,9 +48264,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF32X4 PrefixType = Mandatory P66 @@ -44314,9 +48275,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 @@ -44324,9 +48286,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 25u Opcode = Opcode.VEXTRACTF64X2 PrefixType = Mandatory P66 @@ -44334,9 +48297,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 26(0x1A) { OpcodeByte = 26u @@ -44346,9 +48310,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 26u Opcode = Opcode.VINSERTF64X4 PrefixType = Mandatory P66 @@ -44356,9 +48321,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 27(0x1B) { OpcodeByte = 27u @@ -44368,9 +48334,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 27u Opcode = Opcode.VEXTRACTF64X4 PrefixType = Mandatory P66 @@ -44378,9 +48345,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 28(0x1C) |] @@ -44392,9 +48360,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -44402,9 +48371,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } { OpcodeByte = 29u Opcode = Opcode.VCVTPS2PH PrefixType = Mandatory P66 @@ -44412,9 +48382,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Unknown "ZMM2{SAE}"; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.HalfMem } |] [| // index 30(0x1E) { OpcodeByte = 30u @@ -44424,9 +48395,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 @@ -44434,9 +48406,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPCMPUD PrefixType = Mandatory P66 @@ -44444,9 +48417,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44454,9 +48428,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44464,9 +48439,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 30u Opcode = Opcode.VPCMPUQ PrefixType = Mandatory P66 @@ -44474,9 +48450,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 31(0x1F) { OpcodeByte = 31u @@ -44486,9 +48463,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 @@ -44496,9 +48474,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPCMPD PrefixType = Mandatory P66 @@ -44506,9 +48485,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44516,9 +48496,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44526,9 +48507,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 31u Opcode = Opcode.VPCMPQ PrefixType = Mandatory P66 @@ -44536,9 +48518,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 32(0x20) { OpcodeByte = 32u @@ -44548,9 +48531,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 33(0x21) { OpcodeByte = 33u @@ -44560,9 +48544,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 34(0x22) { OpcodeByte = 34u @@ -44572,9 +48557,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 34u Opcode = Opcode.VPINSRQ PrefixType = Mandatory P66 @@ -44582,9 +48568,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.None - Compat = CompatLegMode.NE } + Compat = CompatLegMode.NE + TupleType = TupleType.Tuple1Scalar } |] [| // index 35(0x23) { OpcodeByte = 35u @@ -44594,9 +48581,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 35u Opcode = Opcode.VSHUFF32X4 PrefixType = Mandatory P66 @@ -44604,9 +48592,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 35u Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 @@ -44614,9 +48603,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 35u Opcode = Opcode.VSHUFF64X2 PrefixType = Mandatory P66 @@ -44624,9 +48614,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 36(0x24) |] @@ -44638,9 +48629,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 @@ -44648,9 +48640,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGD PrefixType = Mandatory P66 @@ -44658,9 +48651,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44668,9 +48662,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44678,9 +48673,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 37u Opcode = Opcode.VPTERNLOGQ PrefixType = Mandatory P66 @@ -44688,9 +48684,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 38(0x26) { OpcodeByte = 38u @@ -44700,9 +48697,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 @@ -44710,9 +48708,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPD PrefixType = Mandatory P66 @@ -44720,9 +48719,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44730,9 +48730,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44740,9 +48741,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44750,9 +48752,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44760,9 +48763,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44770,9 +48774,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 38u Opcode = Opcode.VGETMANTPS PrefixType = Mandatory P66 @@ -44780,9 +48785,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 39(0x27) { OpcodeByte = 39u @@ -44792,9 +48798,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 39u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -44802,9 +48809,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Scalar } { OpcodeByte = 39u Opcode = Opcode.VGETMANTSS PrefixType = Mandatory P66 @@ -44812,9 +48820,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 40(0x28) |] @@ -44856,9 +48865,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 56u Opcode = Opcode.InvalOP PrefixType = Mandatory P66 @@ -44866,9 +48876,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 56u Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 @@ -44876,9 +48887,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 56u Opcode = Opcode.VINSERTI64X2 PrefixType = Mandatory P66 @@ -44886,9 +48898,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 57(0x39) { OpcodeByte = 57u @@ -44898,9 +48911,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI32X4 PrefixType = Mandatory P66 @@ -44908,9 +48922,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 @@ -44918,9 +48933,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } { OpcodeByte = 57u Opcode = Opcode.VEXTRACTI64X2 PrefixType = Mandatory P66 @@ -44928,9 +48944,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple2 } |] [| // index 58(0x3A) { OpcodeByte = 58u @@ -44940,9 +48957,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 58u Opcode = Opcode.VINSERTI64X4 PrefixType = Mandatory P66 @@ -44950,9 +48968,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 59(0x3B) { OpcodeByte = 59u @@ -44962,9 +48981,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.D + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple8 } { OpcodeByte = 59u Opcode = Opcode.VEXTRACTI64X4 PrefixType = Mandatory P66 @@ -44972,9 +48992,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.MRI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple4 } |] [| // index 60(0x3C) |] @@ -44988,9 +49009,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 @@ -44998,9 +49020,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPCMPUB PrefixType = Mandatory P66 @@ -45008,9 +49031,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45018,9 +49042,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45028,9 +49053,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 62u Opcode = Opcode.VPCMPUW PrefixType = Mandatory P66 @@ -45038,9 +49064,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 63(0x3F) { OpcodeByte = 63u @@ -45050,9 +49077,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 63u Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 @@ -45060,9 +49088,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 63u Opcode = Opcode.VPCMPB PrefixType = Mandatory P66 @@ -45070,9 +49099,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45080,9 +49110,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45090,9 +49121,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 63u Opcode = Opcode.VPCMPW PrefixType = Mandatory P66 @@ -45100,9 +49132,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 64(0x40) |] @@ -45116,9 +49149,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 66u Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 @@ -45126,9 +49160,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 66u Opcode = Opcode.VDBPSADBW PrefixType = Mandatory P66 @@ -45136,9 +49171,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 67(0x43) { OpcodeByte = 67u @@ -45148,9 +49184,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 67u Opcode = Opcode.VSHUFI32X4 PrefixType = Mandatory P66 @@ -45158,9 +49195,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 67u Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 @@ -45168,9 +49206,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 67u Opcode = Opcode.VSHUFI64X2 PrefixType = Mandatory P66 @@ -45178,9 +49217,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 68(0x44) { OpcodeByte = 68u @@ -45190,9 +49230,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -45200,9 +49241,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 68u Opcode = Opcode.VPCLMULQDQ PrefixType = Mandatory P66 @@ -45210,9 +49252,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 69(0x45) |] @@ -45244,9 +49287,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 @@ -45254,9 +49298,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VRANGEPD PrefixType = Mandatory P66 @@ -45264,9 +49309,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45274,9 +49320,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45284,9 +49331,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 80u Opcode = Opcode.VRANGEPS PrefixType = Mandatory P66 @@ -45294,9 +49342,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 81(0x51) { OpcodeByte = 81u @@ -45306,9 +49355,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 81u Opcode = Opcode.VRANGESS PrefixType = Mandatory P66 @@ -45316,9 +49366,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 82(0x52) |] @@ -45332,9 +49383,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 @@ -45342,9 +49394,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPD PrefixType = Mandatory P66 @@ -45352,9 +49405,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45362,9 +49416,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45372,9 +49427,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 84u Opcode = Opcode.VFIXUPIMMPS PrefixType = Mandatory P66 @@ -45382,9 +49438,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 85(0x55) { OpcodeByte = 85u @@ -45394,9 +49451,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 85u Opcode = Opcode.VFIXUPIMMSS PrefixType = Mandatory P66 @@ -45404,9 +49462,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 86(0x56) { OpcodeByte = 86u @@ -45416,9 +49475,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 @@ -45426,9 +49486,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPD PrefixType = Mandatory P66 @@ -45436,9 +49497,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45446,9 +49508,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45456,9 +49519,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45466,9 +49530,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45476,9 +49541,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45486,9 +49552,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 86u Opcode = Opcode.VREDUCEPS PrefixType = Mandatory P66 @@ -45496,9 +49563,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 87(0x57) { OpcodeByte = 87u @@ -45508,9 +49576,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 87u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45518,9 +49587,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Scalar } { OpcodeByte = 87u Opcode = Opcode.VREDUCESS PrefixType = Mandatory P66 @@ -45528,9 +49598,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 88(0x58) |] @@ -45568,9 +49639,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 @@ -45578,9 +49650,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPD PrefixType = Mandatory P66 @@ -45588,9 +49661,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45598,9 +49672,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45608,9 +49683,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45618,9 +49694,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45628,9 +49705,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45638,9 +49716,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 102u Opcode = Opcode.VFPCLASSPS PrefixType = Mandatory P66 @@ -45648,9 +49727,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 103(0x67) { OpcodeByte = 103u @@ -45660,9 +49740,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 103u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -45670,9 +49751,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Unknown "XMM1/M16"; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Scalar } { OpcodeByte = 103u Opcode = Opcode.VFPCLASSSS PrefixType = Mandatory P66 @@ -45680,9 +49762,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RM Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Tuple1Scalar } |] [| // index 104(0x68) |] @@ -45708,9 +49791,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 @@ -45718,9 +49802,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 112u Opcode = Opcode.VPSHLDW PrefixType = Mandatory P66 @@ -45728,9 +49813,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 113(0x71) { OpcodeByte = 113u @@ -45740,9 +49826,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 @@ -45750,9 +49837,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDD PrefixType = Mandatory P66 @@ -45760,9 +49848,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45770,9 +49859,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45780,9 +49870,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 113u Opcode = Opcode.VPSHLDQ PrefixType = Mandatory P66 @@ -45790,9 +49881,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 114(0x72) { OpcodeByte = 114u @@ -45802,9 +49894,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 114u Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 @@ -45812,9 +49905,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } { OpcodeByte = 114u Opcode = Opcode.VPSHRDW PrefixType = Mandatory P66 @@ -45822,9 +49916,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.FullMem } |] [| // index 115(0x73) { OpcodeByte = 115u @@ -45834,9 +49929,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 @@ -45844,9 +49940,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDD PrefixType = Mandatory P66 @@ -45854,9 +49951,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45864,9 +49962,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45874,9 +49973,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 115u Opcode = Opcode.VPSHRDQ PrefixType = Mandatory P66 @@ -45884,9 +49984,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.B + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 116(0x74) |] @@ -46052,9 +50153,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46062,9 +50164,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46072,9 +50175,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 194u Opcode = Opcode.InvalOP PrefixType = Mandatory F3 @@ -46082,9 +50186,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Unknown "K1{K2}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] - OpEn = OpEn.A + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Scalar } |] [| // index 195(0xC3) |] @@ -46116,9 +50221,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -46126,9 +50232,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 206u Opcode = Opcode.VGF2P8AFFINEQB PrefixType = Mandatory P66 @@ -46136,9 +50243,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 207(0xCF) { OpcodeByte = 207u @@ -46148,9 +50256,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -46158,9 +50267,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } { OpcodeByte = 207u Opcode = Opcode.VGF2P8AFFINEINVQB PrefixType = Mandatory P66 @@ -46168,9 +50278,10 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.C + OpEn = OpEn.RVMI Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid } + Compat = CompatLegMode.Valid + TupleType = TupleType.Full } |] [| // index 208(0xD0) |] diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index b3beaf40a..b277e17eb 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -149,6 +149,30 @@ type CompatLegMode = | Valid = 3 | Invalid = 4 +/// The tupletype will be referenced in the instruction operand encoding table +/// in the reference page of each instruction, providing the cross reference for +/// the scaling factor N to encoding memory addressing operand. +type TupleType = + /// Compressed Displacement (DISP8*N) Affected by Embedded Broadcast. + | Full = 0 + | Half = 1 + /// EVEX DISP8*N for Instructions Not Affected by Embedded Broadcast. + | FullMem = 2 + | Tuple1Scalar = 3 + | Tuple1Fixed = 4 + | Tuple2 = 5 + | Tuple4 = 6 + | Tuple8 = 7 + | HalfMem = 8 + | QuarterMem = 9 + | EighthMem = 10 + | Mem128 = 11 + | MOVDDUP = 12 + | Quarter = 13 + | Scalar = 14 + | Tuple1_4X = 15 + | NA = 16 (* N/A *) + /// Core instruction representation used in the generated source code. type InstructionCore = { OpcodeByte: uint32 @@ -160,4 +184,5 @@ type InstructionCore = Operands: OperandType[] OpEn: OpEn Mode64: Mode64 - Compat: CompatLegMode } \ No newline at end of file + Compat: CompatLegMode + TupleType: TupleType } \ No newline at end of file diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 46468ad74..7e8599cb2 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -146,7 +146,7 @@ type IntelParser(wordSz, reader) = let contains16BitOperandSize oprSz opcode = match oprSz with - | [| Some Sz16 |] when opcode = Opcode.RETNear -> false + | [| Some Sz16 |] when opcode = Opcode.RET -> false | [| Some Sz16; _ |] when opcode = Opcode.ENTER -> false | [| None; Some Sz16 |] when opcode = Opcode.MOV -> false | [| Some Sz16 |] @@ -307,7 +307,7 @@ type IntelParser(wordSz, reader) = OperandParsers.getOprFromRegGrpREX regBit phlp | Reg sz -> match ic.OpEn with - | OpEn.RVM when i = 1 -> OperandParsers.parseVVVVReg phlp + | OpEn.RVM | OpEn.RVMI when i = 1 -> OperandParsers.parseVVVVReg phlp | _ -> OperandParsers.findRegRBits (oprSizeToRegType sz) phlp.REXPrefix (Operands.getReg modRM) @@ -533,6 +533,7 @@ type IntelParser(wordSz, reader) = // subIdx insCores[subIdx] phlp.OpcodeClass #endif let insCore = insCores[subIdx] + phlp.TupleType <- insCore.TupleType let operands = parseOperands span phlp insCore applyMandatoryPrefixFilter phlp insCore.PrefixType newInstruction phlp insCore.Opcode operands :> IInstruction diff --git a/src/FrontEnd/Intel/ParsingHelper.fs b/src/FrontEnd/Intel/ParsingHelper.fs index e74988a38..63b500650 100644 --- a/src/FrontEnd/Intel/ParsingHelper.fs +++ b/src/FrontEnd/Intel/ParsingHelper.fs @@ -196,28 +196,6 @@ and internal SzCond = /// Normal conditions. This includes all other size conditions in Table A-1. | Normal = 2 -/// The tupletype will be referenced in the instruction operand encoding table -/// in the reference page of each instruction, providing the cross reference for -/// the scaling factor N to encoding memory addressing operand. -and internal TupleType = - /// Compressed Displacement (DISP8*N) Affected by Embedded Broadcast. - | Full = 0 - | Half = 1 - /// EVEX DISP8*N for Instructions Not Affected by Embedded Broadcast. - | FullMem = 2 - | Tuple1Scalar = 3 - | Tuple1Fixed = 4 - | Tuple2 = 5 - | Tuple4 = 6 - | Tuple8 = 7 - | HalfMem = 8 - | QuarterMem = 9 - | EighthMem = 10 - | Mem128 = 11 - | MOVDDUP = 12 - | Tuple1_4X = 13 - | NA = 14 (* N/A *) - and internal SizeKind = | Byte = 0 | Word = 1 From ccedc5cfe6eb3894737d101dcbcf81a65ce6d47e Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Wed, 8 Apr 2026 17:47:14 +0900 Subject: [PATCH 12/26] [Intel] Update Far/Near ptr and fix misc issues --- src/FrontEnd/Intel/Intel.fs | 518 +++++++++++++++---------------- src/FrontEnd/Intel/IntelTypes.fs | 1 + src/FrontEnd/Intel/Parser.fs | 19 +- 3 files changed, 274 insertions(+), 264 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 87c3ea216..e05de273b 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -6154,7 +6154,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Far Sz16 |] + Operands = [| Reg Sz16; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6165,7 +6165,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Far Sz32 |] + Operands = [| Reg Sz32; Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6178,7 +6178,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Far Sz16 |] + Operands = [| Reg Sz16; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6189,7 +6189,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Far Sz32 |] + Operands = [| Reg Sz32; Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -8705,7 +8705,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Unknown "M80BCD" |] + Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8716,7 +8716,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Unknown "M80BCD" |] + Operands = [| Mem Sz80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16182,7 +16182,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Far Sz16 |] + Operands = [| Reg Sz16; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16193,7 +16193,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Far Sz32 |] + Operands = [| Reg Sz32; Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16204,7 +16204,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Far Sz64 |] + Operands = [| Reg Sz64; Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16252,7 +16252,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Far Sz16 |] + Operands = [| Reg Sz16; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16263,7 +16263,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Far Sz32 |] + Operands = [| Reg Sz32; Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16274,7 +16274,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Far Sz64 |] + Operands = [| Reg Sz64; Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16287,7 +16287,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Far Sz16 |] + Operands = [| Reg Sz16; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16298,7 +16298,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Far Sz32 |] + Operands = [| Reg Sz32; Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16309,7 +16309,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Far Sz64 |] + Operands = [| Reg Sz64; Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -18984,7 +18984,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19126,7 +19126,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26659,7 +26659,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26999,7 +26999,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28043,7 +28043,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28054,7 +28054,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "XMM2/M16" |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32492,7 +32492,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32525,7 +32525,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32560,7 +32560,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32593,7 +32593,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33208,7 +33208,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33241,7 +33241,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33302,7 +33302,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33335,7 +33335,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33370,7 +33370,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33403,7 +33403,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33438,7 +33438,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33471,7 +33471,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33506,7 +33506,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33539,7 +33539,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33574,7 +33574,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33607,7 +33607,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33664,7 +33664,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33697,7 +33697,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33754,7 +33754,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33798,7 +33798,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33844,7 +33844,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33877,7 +33877,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33910,7 +33910,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33943,7 +33943,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33978,7 +33978,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34011,7 +34011,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34068,7 +34068,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34101,7 +34101,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34158,7 +34158,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34191,7 +34191,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34248,7 +34248,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34281,7 +34281,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34408,7 +34408,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34548,7 +34548,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34688,7 +34688,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34723,7 +34723,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34758,7 +34758,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34793,7 +34793,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35052,7 +35052,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35254,7 +35254,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35287,7 +35287,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35320,7 +35320,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35353,7 +35353,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35386,7 +35386,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35397,7 +35397,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35452,7 +35452,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35463,7 +35463,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35553,7 +35553,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35619,7 +35619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35724,7 +35724,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35761,7 +35761,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35794,7 +35794,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35827,7 +35827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35871,7 +35871,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35939,7 +35939,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35972,7 +35972,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36005,7 +36005,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36049,7 +36049,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36117,7 +36117,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36161,7 +36161,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36194,7 +36194,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36216,7 +36216,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36249,7 +36249,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36282,7 +36282,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36317,7 +36317,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36361,7 +36361,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36800,7 +36800,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36833,7 +36833,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36918,7 +36918,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36951,7 +36951,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37111,7 +37111,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37301,7 +37301,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37334,7 +37334,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37474,7 +37474,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37507,7 +37507,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37796,7 +37796,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz256; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37818,7 +37818,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37851,7 +37851,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37884,7 +37884,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38059,7 +38059,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38092,7 +38092,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38232,7 +38232,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38265,7 +38265,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38407,7 +38407,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38584,7 +38584,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38619,7 +38619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38724,7 +38724,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38888,7 +38888,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38923,7 +38923,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39098,7 +39098,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39267,7 +39267,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39278,7 +39278,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39368,7 +39368,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39379,7 +39379,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39705,7 +39705,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39740,7 +39740,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39911,7 +39911,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39944,7 +39944,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40317,7 +40317,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40350,7 +40350,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40383,7 +40383,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40416,7 +40416,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40451,7 +40451,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40552,7 +40552,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40721,7 +40721,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40756,7 +40756,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40789,7 +40789,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40988,7 +40988,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41021,7 +41021,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "XMM1/M16{K1}{Z}"; Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41306,7 +41306,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41442,7 +41442,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41475,7 +41475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41644,7 +41644,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41677,7 +41677,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41747,7 +41747,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41780,7 +41780,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41850,7 +41850,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41883,7 +41883,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41918,7 +41918,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41951,7 +41951,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41988,7 +41988,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42021,7 +42021,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42080,7 +42080,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42113,7 +42113,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42148,7 +42148,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42181,7 +42181,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42216,7 +42216,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42249,7 +42249,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42284,7 +42284,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42317,7 +42317,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42360,7 +42360,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42393,7 +42393,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42452,7 +42452,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42485,7 +42485,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42544,7 +42544,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42579,7 +42579,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42614,7 +42614,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42647,7 +42647,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42693,7 +42693,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42807,7 +42807,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42840,7 +42840,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43332,7 +43332,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43365,7 +43365,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43400,7 +43400,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43433,7 +43433,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43538,7 +43538,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43571,7 +43571,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43655,7 +43655,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43688,7 +43688,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43723,7 +43723,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43756,7 +43756,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43824,7 +43824,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43857,7 +43857,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43962,7 +43962,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43995,7 +43995,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44030,7 +44030,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44063,7 +44063,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44133,7 +44133,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2/M16" |] + Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44144,7 +44144,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "XMM2/M16" |] + Operands = [| Reg Sz256; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44155,7 +44155,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "XMM2/M16" |] + Operands = [| Reg Sz512; RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44374,7 +44374,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44407,7 +44407,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44442,7 +44442,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44475,7 +44475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44516,7 +44516,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45214,7 +45214,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45247,7 +45247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45282,7 +45282,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45315,7 +45315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45350,7 +45350,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45383,7 +45383,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45442,7 +45442,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45475,7 +45475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45556,7 +45556,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45589,7 +45589,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45648,7 +45648,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45681,7 +45681,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46016,7 +46016,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46049,7 +46049,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46084,7 +46084,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46117,7 +46117,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46152,7 +46152,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46185,7 +46185,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46244,7 +46244,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46277,7 +46277,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46358,7 +46358,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46391,7 +46391,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46450,7 +46450,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46483,7 +46483,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46550,7 +46550,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46585,7 +46585,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46620,7 +46620,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46653,7 +46653,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46688,7 +46688,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46721,7 +46721,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46756,7 +46756,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46789,7 +46789,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46848,7 +46848,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46881,7 +46881,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46940,7 +46940,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46973,7 +46973,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47032,7 +47032,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47065,7 +47065,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47132,7 +47132,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47165,7 +47165,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47823,7 +47823,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47834,7 +47834,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47891,7 +47891,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47926,7 +47926,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47998,7 +47998,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48033,7 +48033,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48068,7 +48068,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48394,7 +48394,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48427,7 +48427,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48462,7 +48462,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48495,7 +48495,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48628,7 +48628,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48661,7 +48661,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48696,7 +48696,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48762,7 +48762,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48808,7 +48808,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49286,7 +49286,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49319,7 +49319,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49382,7 +49382,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49415,7 +49415,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49474,7 +49474,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49540,7 +49540,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49586,7 +49586,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49638,7 +49638,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49704,7 +49704,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49750,7 +49750,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Unknown "XMM1/M16"; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49825,7 +49825,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49858,7 +49858,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49928,7 +49928,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49961,7 +49961,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50185,7 +50185,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; Unknown "XMM3/M16{SAE}"; Imm Sz8 |] + Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50220,7 +50220,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50255,7 +50255,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index b277e17eb..e1bec52f4 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -64,6 +64,7 @@ and OprSize = | Sz8 | Sz16 | Sz32 + | Sz48 | Sz64 | Sz80 | Sz128 diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 7e8599cb2..93c44e03b 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -73,6 +73,7 @@ type IntelParser(wordSz, reader) = Array.map (fun o -> match o with | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz + | FixedReg(Register.AX, Explicit) -> Some Sz16 | _ -> None) operands |> Array.distinct @@ -144,11 +145,11 @@ type IntelParser(wordSz, reader) = insPref = Legacy NP || insPref = Mandatory NP else false - let contains16BitOperandSize oprSz opcode = + let contains16BitOperandSize oprSz op = match oprSz with - | [| Some Sz16 |] when opcode = Opcode.RET -> false - | [| Some Sz16; _ |] when opcode = Opcode.ENTER -> false - | [| None; Some Sz16 |] when opcode = Opcode.MOV -> false + | [| Some Sz16 |] when op = Opcode.RET -> false + | [| Some Sz16; _ |] when op = Opcode.ENTER -> false + | [| None; Some Sz16 |] when op = Opcode.MOV -> false | [| Some Sz16 |] | [| Some Sz16; _ |] | [| None; Some Sz16 |] (* Temp *) -> true @@ -261,6 +262,7 @@ type IntelParser(wordSz, reader) = | OprSize.Sz8 -> 8 | OprSize.Sz16 -> 16 | OprSize.Sz32 -> 32 + | OprSize.Sz48 -> 48 | OprSize.Sz64 -> 64 | OprSize.Sz80 -> 80 | OprSize.Sz128 -> 128 @@ -327,7 +329,10 @@ type IntelParser(wordSz, reader) = OperandParsers.parseOprImm span phlp (oprSizeToRegType sz) | Rel sz -> OperandParsers.parseOprForRelJmp span phlp (oprSizeToRegType sz) - | FixedReg(reg, _) -> OprReg reg + | FixedReg(reg, _) -> + let sz = Register.toRegType phlp.WordSize reg + setMemoryOperandContextWithCurrentAddr phlp sz sz + OprReg reg | STReg None -> Operands.getRM modRM |> Operands.getSTReg | STReg(Some reg) -> OprReg reg | BM sz -> @@ -446,9 +451,13 @@ type IntelParser(wordSz, reader) = member inline private _.ParseVEX(bs: ByteSpan, pos, rex: REXPrefix byref, vex: VEXInfo option byref) = match bs[pos] with + | 0xC5uy when bs[pos + 1] < 0xC0uy && wordSz <> WordSize.Bit64 -> + pos | 0xC5uy -> vex <- Some(getTwoVEXInfo bs &rex (pos + 1)) pos + 2 + | 0xC4uy when bs[pos + 1] < 0xC0uy && wordSz <> WordSize.Bit64 -> + pos | 0xC4uy -> vex <- Some(getThreeVEXInfo bs &rex (pos + 1)) pos + 3 From ed2761bc01f5d9ba89107533a0d8f052734d743b Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 23 Apr 2026 16:25:33 +0900 Subject: [PATCH 13/26] [Intel] Update Instructions and fix minor issues --- src/FrontEnd/Intel/Intel.fs | 676 +++++++++++++++++------------------ src/FrontEnd/Intel/Parser.fs | 3 + 2 files changed, 333 insertions(+), 346 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index e05de273b..1bc03238b 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -2687,7 +2687,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 115(0x73) { OpcodeByte = 115u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2698,7 +2698,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 115u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2709,7 +2709,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 115u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2746,7 +2746,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 117(0x75) { OpcodeByte = 117u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2757,7 +2757,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 117u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2794,7 +2794,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 119(0x77) { OpcodeByte = 119u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2805,7 +2805,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 119u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2844,7 +2844,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 122(0x7A) { OpcodeByte = 122u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2855,7 +2855,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 122u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2916,7 +2916,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 125(0x7D) { OpcodeByte = 125u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -2927,7 +2927,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 125u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4874,17 +4874,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 164(0xA4) - { OpcodeByte = 164u - Opcode = Opcode.InvalOP - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8; Mem Sz8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 164u Opcode = Opcode.MOVSB PrefixType = Legacy NP @@ -4898,39 +4887,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 165(0xA5) - { OpcodeByte = 165u - Opcode = Opcode.InvalOP - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16; Mem Sz16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 165u - Opcode = Opcode.InvalOP - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Mem Sz32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 165u - Opcode = Opcode.InvalOP - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.REXW - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Mem Sz64 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.NE - TupleType = TupleType.NA } { OpcodeByte = 165u Opcode = Opcode.MOVSW PrefixType = Legacy NP @@ -4967,7 +4923,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 166(0xA6) { OpcodeByte = 166u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -4991,7 +4947,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 167(0xA7) { OpcodeByte = 167u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5002,7 +4958,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 167u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5013,7 +4969,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 167u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -5107,7 +5063,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 170(0xAA) { OpcodeByte = 170u - Opcode = Opcode.InvalOP + Opcode = Opcode.STOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5131,7 +5087,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 171(0xAB) { OpcodeByte = 171u - Opcode = Opcode.InvalOP + Opcode = Opcode.STOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5142,7 +5098,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 171u - Opcode = Opcode.InvalOP + Opcode = Opcode.STOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5153,7 +5109,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 171u - Opcode = Opcode.InvalOP + Opcode = Opcode.STOS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -5199,7 +5155,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 172(0xAC) { OpcodeByte = 172u - Opcode = Opcode.InvalOP + Opcode = Opcode.LODS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5223,7 +5179,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 173(0xAD) { OpcodeByte = 173u - Opcode = Opcode.InvalOP + Opcode = Opcode.LODS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5234,7 +5190,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 173u - Opcode = Opcode.InvalOP + Opcode = Opcode.LODS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5245,7 +5201,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 173u - Opcode = Opcode.InvalOP + Opcode = Opcode.LODS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -5291,7 +5247,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 174(0xAE) { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.SCAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5315,7 +5271,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 175(0xAF) { OpcodeByte = 175u - Opcode = Opcode.InvalOP + Opcode = Opcode.SCAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5326,7 +5282,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 175u - Opcode = Opcode.InvalOP + Opcode = Opcode.SCAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5337,7 +5293,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 175u - Opcode = Opcode.InvalOP + Opcode = Opcode.SCAS PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -5811,7 +5767,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 192u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -5989,7 +5945,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 193u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6000,7 +5956,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 193u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6011,7 +5967,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 193u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6492,7 +6448,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 208u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6670,7 +6626,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 209u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6681,7 +6637,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 209u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -6692,7 +6648,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 209u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -6848,7 +6804,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7026,7 +6982,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7037,7 +6993,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -7048,7 +7004,7 @@ let (norOne: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.SAL PrefixType = Legacy NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -7208,7 +7164,7 @@ let (norOne: InstructionCore[][]) = |] [| // index 214(0xD6) { OpcodeByte = 214u - Opcode = Opcode.InvalOP + Opcode = Opcode.UDB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -9061,7 +9017,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.AL, Explicit) + FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9074,7 +9031,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.AX, Explicit) + FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9085,7 +9043,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.EAX, Explicit) + FixedReg(Register.DX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9098,7 +9057,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AL, Explicit) |] + Operands = [| FixedReg(Register.DX, Explicit) + FixedReg(Register.AL, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9111,7 +9071,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.AX, Explicit) |] + Operands = [| FixedReg(Register.DX, Explicit) + FixedReg(Register.AX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9122,7 +9083,8 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); FixedReg(Register.EAX, Explicit) |] + Operands = [| FixedReg(Register.DX, Explicit) + FixedReg(Register.EAX, Explicit) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9960,7 +9922,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.CLUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10059,7 +10021,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.PCONFIG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10070,7 +10032,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.RDMSRLIST PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10125,7 +10087,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.SERIALIZE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10213,7 +10175,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.STUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10235,7 +10197,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.TESTUI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10246,7 +10208,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.UIRET PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10257,7 +10219,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.WRMSRLIST PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10268,7 +10230,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.WRMSRNS PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10312,7 +10274,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.XRESLDTRK PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10334,7 +10296,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 1u - Opcode = Opcode.InvalOP + Opcode = Opcode.XSUSLDTRK PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10504,7 +10466,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 9u - Opcode = Opcode.InvalOP + Opcode = Opcode.WBNOINVD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10919,7 +10881,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 24u - Opcode = Opcode.InvalOP + Opcode = Opcode.PREFETCHIT0 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -10930,7 +10892,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid TupleType = TupleType.NA } { OpcodeByte = 24u - Opcode = Opcode.InvalOP + Opcode = Opcode.PREFETCHIT1 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11103,7 +11065,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 28(0x1C) { OpcodeByte = 28u - Opcode = Opcode.InvalOP + Opcode = Opcode.CLDEMOTE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11971,7 +11933,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 66u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11982,7 +11944,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 66u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNAE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -11993,7 +11955,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 66u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12039,7 +12001,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 67u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12050,7 +12012,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 67u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNB PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12061,7 +12023,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 67u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12107,7 +12069,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 68(0x44) { OpcodeByte = 68u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12118,7 +12080,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 68u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12129,7 +12091,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 68u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12175,7 +12137,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 69(0x45) { OpcodeByte = 69u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12186,7 +12148,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 69u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12197,7 +12159,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 69u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12276,7 +12238,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 70u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12287,7 +12249,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 70u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNA PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12298,7 +12260,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 70u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12344,7 +12306,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 71u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12355,7 +12317,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 71u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNBE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12366,7 +12328,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 71u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12482,7 +12444,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 74u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12493,7 +12455,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 74u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12504,7 +12466,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 74u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12550,7 +12512,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPO PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12561,7 +12523,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPO PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12572,7 +12534,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVPO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12618,7 +12580,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 76u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12629,7 +12591,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 76u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNGE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12640,7 +12602,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 76u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12686,7 +12648,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 77u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12697,7 +12659,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 77u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNL PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12708,7 +12670,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 77u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12754,7 +12716,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 78u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12765,7 +12727,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 78u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNG PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12776,7 +12738,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 78u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -12822,7 +12784,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NA TupleType = TupleType.NA } { OpcodeByte = 79u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12833,7 +12795,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 79u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNLE PrefixType = Legacy NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -12844,7 +12806,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 79u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMOVNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -14422,7 +14384,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 131(0x83) { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14433,7 +14395,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14444,7 +14406,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14455,7 +14417,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14466,7 +14428,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14477,7 +14439,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 131u - Opcode = Opcode.JAE + Opcode = Opcode.JNB PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14558,7 +14520,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 133(0x85) { OpcodeByte = 133u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14569,7 +14531,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 133u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14580,7 +14542,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 133u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14591,7 +14553,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 133u - Opcode = Opcode.JNZ + Opcode = Opcode.JNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14650,7 +14612,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 135(0x87) { OpcodeByte = 135u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14661,7 +14623,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 135u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14672,7 +14634,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 135u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14683,7 +14645,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 135u - Opcode = Opcode.JNBE + Opcode = Opcode.JA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14744,7 +14706,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 138(0x8A) { OpcodeByte = 138u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14755,7 +14717,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 138u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14766,7 +14728,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 138u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14777,7 +14739,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 138u - Opcode = Opcode.JP + Opcode = Opcode.JPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14882,7 +14844,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 141(0x8D) { OpcodeByte = 141u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14893,7 +14855,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 141u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14904,7 +14866,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 141u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -14915,7 +14877,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 141u - Opcode = Opcode.JGE + Opcode = Opcode.JNL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15057,7 +15019,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 146u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15068,7 +15030,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 146u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15081,7 +15043,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 147(0x93) { OpcodeByte = 147u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETAE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15103,7 +15065,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 147u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15116,7 +15078,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 148(0x94) { OpcodeByte = 148u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15140,7 +15102,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 149(0x95) { OpcodeByte = 149u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15175,7 +15137,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 150u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNA PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15199,7 +15161,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 151u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNBE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15249,7 +15211,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 154u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETPE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15273,7 +15235,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 155u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETPO PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15297,7 +15259,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 156u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15310,7 +15272,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 157(0x9D) { OpcodeByte = 157u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETGE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15345,7 +15307,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 158u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNG PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15369,7 +15331,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 159u - Opcode = Opcode.InvalOP + Opcode = Opcode.SETNLE PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15861,7 +15823,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.PTWRITE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -15872,7 +15834,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.PTWRITE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15949,18 +15911,20 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.TPAUSE PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] + Operands = [| Reg Sz32 + FixedReg(Register.EDX, Implicit) + FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.UMONITOR PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -15971,12 +15935,14 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.UMWAIT PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32; FixedReg(Register.EDX, Implicit); FixedReg(Register.EAX, Implicit) |] + Operands = [| Reg Sz32 + FixedReg(Register.EDX, Implicit) + FixedReg(Register.EAX, Implicit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16037,7 +16003,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.XRSTOR64 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -16059,7 +16025,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.XSAVE64 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -16081,7 +16047,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.XSAVEOPT64 PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -17000,7 +16966,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 199u - Opcode = Opcode.InvalOP + Opcode = Opcode.RDPID PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -17011,7 +16977,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 199u - Opcode = Opcode.InvalOP + Opcode = Opcode.RDPID PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -17088,7 +17054,7 @@ let (norTwo: InstructionCore[][]) = Compat = CompatLegMode.Invalid TupleType = TupleType.NA } { OpcodeByte = 199u - Opcode = Opcode.InvalOP + Opcode = Opcode.SENDUIPI PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19717,7 +19683,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 216(0xD8) { OpcodeByte = 216u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESDECWIDE128KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19728,7 +19694,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 216u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESDECWIDE256KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19739,7 +19705,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 216u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESENCWIDE128KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19750,7 +19716,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 216u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESENCWIDE256KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19791,7 +19757,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 220u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESENC128KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19802,12 +19768,15 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 220u - Opcode = Opcode.InvalOP + Opcode = Opcode.LOADIWKEY PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Reg Sz128; FixedReg(Register.EAX, Implicit); Unknown "" |] + Operands = [| Reg Sz128 + Reg Sz128 + FixedReg(Register.EAX, Implicit) + Unknown "" |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19815,7 +19784,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 221(0xDD) { OpcodeByte = 221u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESDEC128KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19850,7 +19819,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 222u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESENC256KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -19863,7 +19832,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 223(0xDF) { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.AESDEC256KL PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -20144,7 +20113,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 248(0xF8) { OpcodeByte = 248u - Opcode = Opcode.InvalOP + Opcode = Opcode.ENQCMD PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -20155,7 +20124,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 248u - Opcode = Opcode.InvalOP + Opcode = Opcode.ENQCMDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -20166,7 +20135,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 248u - Opcode = Opcode.InvalOP + Opcode = Opcode.MOVDIR64B PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -20179,7 +20148,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 249(0xF9) { OpcodeByte = 249u - Opcode = Opcode.InvalOP + Opcode = Opcode.MOVDIRI PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -20190,7 +20159,7 @@ let (norThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 249u - Opcode = Opcode.InvalOP + Opcode = Opcode.MOVDIRI PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None @@ -20203,12 +20172,15 @@ let (norThree38: InstructionCore[][]) = |] [| // index 250(0xFA) { OpcodeByte = 250u - Opcode = Opcode.InvalOP + Opcode = Opcode.ENCODEKEY128 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Reg Sz32; Unknown ""; Unknown "" |] + Operands = [| Reg Sz32 + Reg Sz32 + Unknown "" + Unknown "" |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20216,7 +20188,7 @@ let (norThree38: InstructionCore[][]) = |] [| // index 251(0xFB) { OpcodeByte = 251u - Opcode = Opcode.InvalOP + Opcode = Opcode.ENCODEKEY256 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -21051,7 +21023,7 @@ let (norThree3A: InstructionCore[][]) = |] [| // index 240(0xF0) { OpcodeByte = 240u - Opcode = Opcode.InvalOP + Opcode = Opcode.HRESET PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None @@ -24031,7 +24003,7 @@ let (vexTwo: InstructionCore[][]) = |] [| // index 119(0x77) { OpcodeByte = 119u - Opcode = Opcode.InvalOP + Opcode = Opcode.VZEROALL PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 @@ -24592,7 +24564,7 @@ let (vexTwo: InstructionCore[][]) = |] [| // index 174(0xAE) { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.VLDMXCSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -24603,7 +24575,7 @@ let (vexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 174u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSTMXCSR PrefixType = Mandatory NP REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -27480,7 +27452,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 73(0x49) { OpcodeByte = 73u - Opcode = Opcode.InvalOP + Opcode = Opcode.LDTILECFG PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27491,7 +27463,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 73u - Opcode = Opcode.InvalOP + Opcode = Opcode.STTILECFG PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27502,7 +27474,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 73u - Opcode = Opcode.InvalOP + Opcode = Opcode.TILERELEASE PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27513,7 +27485,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 73u - Opcode = Opcode.InvalOP + Opcode = Opcode.TILEZERO PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27528,7 +27500,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 75(0x4B) { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.TILELOADD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27539,7 +27511,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.TILELOADDT1 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27550,7 +27522,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 75u - Opcode = Opcode.InvalOP + Opcode = Opcode.TILESTORED PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27571,7 +27543,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 80(0x50) { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSSD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27582,7 +27554,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSSD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27593,7 +27565,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27604,7 +27576,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27615,7 +27587,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBUUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27626,7 +27598,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 80u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBUUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27661,7 +27633,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 81(0x51) { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSSDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27672,7 +27644,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSSDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27683,7 +27655,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27694,7 +27666,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBSUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27705,7 +27677,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBUUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27716,7 +27688,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 81u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPBUUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -27870,7 +27842,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 92(0x5C) { OpcodeByte = 92u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPBF16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27881,7 +27853,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 92u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPFP16PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27896,7 +27868,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 94(0x5E) { OpcodeByte = 94u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPBSSD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27907,7 +27879,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 94u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPBSUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27918,7 +27890,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 94u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPBUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -27929,7 +27901,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 94u - Opcode = Opcode.InvalOP + Opcode = Opcode.TDPBUUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29138,7 +29110,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 176(0xB0) { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEEBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29149,7 +29121,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEEBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29160,7 +29132,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEEPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29171,7 +29143,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEEPH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29182,7 +29154,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEOBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29193,7 +29165,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEOBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29204,7 +29176,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEOPH2PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29215,7 +29187,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 176u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCVTNEOPH2PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29228,7 +29200,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 177(0xB1) { OpcodeByte = 177u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBCSTNEBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29239,7 +29211,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 177u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBCSTNEBF162PS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29250,7 +29222,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 177u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBCSTNESH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29261,7 +29233,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 177u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBCSTNESH2PS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29720,7 +29692,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 203(0xCB) { OpcodeByte = 203u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSHA512RNDS2 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29733,7 +29705,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 204(0xCC) { OpcodeByte = 204u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSHA512MSG1 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29746,7 +29718,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 205(0xCD) { OpcodeByte = 205u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSHA512MSG2 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29789,7 +29761,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 210(0xD2) { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWSUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29800,7 +29772,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWSUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29811,7 +29783,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29822,7 +29794,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUSD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29833,7 +29805,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29844,7 +29816,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 210u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUUD PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29857,7 +29829,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 211(0xD3) { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWSUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29868,7 +29840,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWSUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29879,7 +29851,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29890,7 +29862,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUSDS PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29901,7 +29873,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29912,7 +29884,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 211u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPDPWUUDS PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29937,7 +29909,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 218(0xDA) { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM3MSG1 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29948,7 +29920,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM3MSG2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29959,7 +29931,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM4KEY4 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29970,7 +29942,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM4KEY4 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -29981,7 +29953,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM4RNDS4 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -29992,7 +29964,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.NA } { OpcodeByte = 218u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM4RNDS4 PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -30005,7 +29977,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 219(0xDB) { OpcodeByte = 219u - Opcode = Opcode.InvalOP + Opcode = Opcode.VAESIMC PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -30114,7 +30086,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 224(0xE0) { OpcodeByte = 224u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPOXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30125,7 +30097,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 224u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPOXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30138,7 +30110,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 225(0xE1) { OpcodeByte = 225u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNOXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30149,7 +30121,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 225u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNOXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30162,7 +30134,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 226(0xE2) { OpcodeByte = 226u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPBXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30173,7 +30145,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 226u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPBXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30186,7 +30158,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 227(0xE3) { OpcodeByte = 227u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNBXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30197,7 +30169,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 227u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNBXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30210,7 +30182,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 228(0xE4) { OpcodeByte = 228u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPZXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30221,7 +30193,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 228u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPZXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30234,7 +30206,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 229(0xE5) { OpcodeByte = 229u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNZXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30245,7 +30217,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 229u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNZXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30258,7 +30230,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 230(0xE6) { OpcodeByte = 230u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPBEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30269,7 +30241,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 230u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPBEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30282,7 +30254,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 231(0xE7) { OpcodeByte = 231u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNBEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30293,7 +30265,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 231u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNBEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30306,7 +30278,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 232(0xE8) { OpcodeByte = 232u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPSXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30317,7 +30289,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 232u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPSXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30330,7 +30302,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 233(0xE9) { OpcodeByte = 233u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNSXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30341,7 +30313,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 233u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNSXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30354,7 +30326,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 234(0xEA) { OpcodeByte = 234u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPPXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30365,7 +30337,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 234u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPPXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30378,7 +30350,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 235(0xEB) { OpcodeByte = 235u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNPXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30389,7 +30361,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 235u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNPXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30402,7 +30374,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 236(0xEC) { OpcodeByte = 236u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPLXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30413,7 +30385,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 236u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPLXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30426,7 +30398,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 237(0xED) { OpcodeByte = 237u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNLXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30437,7 +30409,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 237u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNLXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30450,7 +30422,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 238(0xEE) { OpcodeByte = 238u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPLEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30461,7 +30433,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 238u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPLEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -30474,7 +30446,7 @@ let (vexThree38: InstructionCore[][]) = |] [| // index 239(0xEF) { OpcodeByte = 239u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNLEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -30485,7 +30457,7 @@ let (vexThree38: InstructionCore[][]) = Compat = CompatLegMode.NE TupleType = TupleType.NA } { OpcodeByte = 239u - Opcode = Opcode.InvalOP + Opcode = Opcode.CMPNLEXADD PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -31990,7 +31962,7 @@ let (vexThree3A: InstructionCore[][]) = |] [| // index 222(0xDE) { OpcodeByte = 222u - Opcode = Opcode.InvalOP + Opcode = Opcode.VSM3RNDS2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -32003,7 +31975,7 @@ let (vexThree3A: InstructionCore[][]) = |] [| // index 223(0xDF) { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VAESKEYGENASSIST PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 @@ -36866,7 +36838,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Unknown "K1{K2}" + Reg Sz128 + RMdiff(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36877,7 +36852,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Unknown "K1{K2}" + Reg Sz128 + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37469,7 +37447,7 @@ let (evexTwo: InstructionCore[][]) = |] [| // index 223(0xDF) { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -37480,7 +37458,7 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -37491,7 +37469,7 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDND PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -37502,7 +37480,7 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 @@ -37513,7 +37491,7 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -37524,7 +37502,7 @@ let (evexTwo: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 223u - Opcode = Opcode.InvalOP + Opcode = Opcode.VPANDNQ PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39536,7 +39514,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 25u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39547,7 +39525,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple2 } { OpcodeByte = 25u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF32X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39560,7 +39538,7 @@ let (evexThree38: InstructionCore[][]) = |] [| // index 26(0x1A) { OpcodeByte = 26u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -39571,7 +39549,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple4 } { OpcodeByte = 26u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39582,7 +39560,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple4 } { OpcodeByte = 26u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 @@ -39593,7 +39571,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple2 } { OpcodeByte = 26u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF64X2 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -39606,7 +39584,7 @@ let (evexThree38: InstructionCore[][]) = |] [| // index 27(0x1B) { OpcodeByte = 27u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -39617,7 +39595,7 @@ let (evexThree38: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple8 } { OpcodeByte = 27u - Opcode = Opcode.InvalOP + Opcode = Opcode.VBROADCASTF64X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 @@ -47960,7 +47938,7 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 8(0x08) { OpcodeByte = 8u - Opcode = Opcode.InvalOP + Opcode = Opcode.VRNDSCALEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -47971,7 +47949,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 8u - Opcode = Opcode.InvalOP + Opcode = Opcode.VRNDSCALEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -47982,7 +47960,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 8u - Opcode = Opcode.InvalOP + Opcode = Opcode.VRNDSCALEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -48063,7 +48041,7 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 10(0x0A) { OpcodeByte = 10u - Opcode = Opcode.InvalOP + Opcode = Opcode.VRNDSCALESH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -48304,7 +48282,7 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 26(0x1A) { OpcodeByte = 26u - Opcode = Opcode.InvalOP + Opcode = Opcode.VINSERTF32X8 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -48724,7 +48702,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 38u - Opcode = Opcode.InvalOP + Opcode = Opcode.VGETMANTPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -48735,7 +48713,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 38u - Opcode = Opcode.InvalOP + Opcode = Opcode.VGETMANTPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -48746,7 +48724,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 38u - Opcode = Opcode.InvalOP + Opcode = Opcode.VGETMANTPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -48803,7 +48781,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 39u - Opcode = Opcode.InvalOP + Opcode = Opcode.VGETMANTSH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -48859,7 +48837,7 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 56(0x38) { OpcodeByte = 56u - Opcode = Opcode.InvalOP + Opcode = Opcode.VINSERTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -48870,7 +48848,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple4 } { OpcodeByte = 56u - Opcode = Opcode.InvalOP + Opcode = Opcode.VINSERTI32X4 PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -49502,7 +49480,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 86u - Opcode = Opcode.InvalOP + Opcode = Opcode.VREDUCEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -49513,7 +49491,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 86u - Opcode = Opcode.InvalOP + Opcode = Opcode.VREDUCEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -49524,7 +49502,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 86u - Opcode = Opcode.InvalOP + Opcode = Opcode.VREDUCEPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -49575,13 +49553,16 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Unknown "IMM8/R" |] + Operands = [| Reg Sz128 + Reg Sz128 + RMdiff(Sz128, Sz64) + Unknown "IMM8/R" |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 87u - Opcode = Opcode.InvalOP + Opcode = Opcode.VREDUCESH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -49666,7 +49647,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 102u - Opcode = Opcode.InvalOP + Opcode = Opcode.VFPCLASSPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -49677,7 +49658,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 102u - Opcode = Opcode.InvalOP + Opcode = Opcode.VFPCLASSPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -49688,7 +49669,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 102u - Opcode = Opcode.InvalOP + Opcode = Opcode.VFPCLASSPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -49745,7 +49726,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Tuple1Scalar } { OpcodeByte = 103u - Opcode = Opcode.InvalOP + Opcode = Opcode.VFPCLASSSH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -50147,7 +50128,7 @@ let (evexThree3A: InstructionCore[][]) = |] [| // index 194(0xC2) { OpcodeByte = 194u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCMPPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 @@ -50158,7 +50139,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 194u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCMPPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 @@ -50169,7 +50150,7 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 194u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCMPPH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 @@ -50180,12 +50161,15 @@ let (evexThree3A: InstructionCore[][]) = Compat = CompatLegMode.Valid TupleType = TupleType.Full } { OpcodeByte = 194u - Opcode = Opcode.InvalOP + Opcode = Opcode.VCMPSH PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| Unknown "K1{K2}" + Reg Sz128 + RMdiff(Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 93c44e03b..53001917c 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -328,6 +328,9 @@ type IntelParser(wordSz, reader) = | Imm sz -> OperandParsers.parseOprImm span phlp (oprSizeToRegType sz) | Rel sz -> + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.F64) + setMemoryOperandContext phlp effAddrSz effOprSz effOprSz OperandParsers.parseOprForRelJmp span phlp (oprSizeToRegType sz) | FixedReg(reg, _) -> let sz = Register.toRegType phlp.WordSize reg From 938c73add786897cb8776ed9103a0269cae9054d Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 28 Apr 2026 16:58:47 +0900 Subject: [PATCH 14/26] [Intel] Remove all unknown operands --- src/FrontEnd/Intel/Intel.fs | 2949 ++++++++++++++++-------------- src/FrontEnd/Intel/IntelTypes.fs | 51 +- src/FrontEnd/Intel/Parser.fs | 44 +- 3 files changed, 1658 insertions(+), 1386 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 1bc03238b..8b2df62aa 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -105,7 +105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -118,7 +118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -129,7 +129,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -140,7 +140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -153,7 +153,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.ES, Explicit) |] + Operands = [| FixedReg(Register.ES) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -166,7 +166,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.ES, Explicit) |] + Operands = [| FixedReg(Register.ES) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -275,7 +275,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -288,7 +288,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -299,7 +299,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -310,7 +310,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -323,7 +323,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.CS, Explicit) |] + Operands = [| FixedReg(Register.CS) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -434,7 +434,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -447,7 +447,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -458,7 +458,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -469,7 +469,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -482,7 +482,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.SS, Explicit) |] + Operands = [| FixedReg(Register.SS) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -495,7 +495,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.SS, Explicit) |] + Operands = [| FixedReg(Register.SS) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -604,7 +604,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -617,7 +617,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -628,7 +628,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -639,7 +639,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -652,7 +652,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DS, Explicit) |] + Operands = [| FixedReg(Register.DS) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -665,7 +665,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DS, Explicit) |] + Operands = [| FixedReg(Register.DS) |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -774,7 +774,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -787,7 +787,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -798,7 +798,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -809,7 +809,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -933,7 +933,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -946,7 +946,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -957,7 +957,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -968,7 +968,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1092,7 +1092,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1105,7 +1105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1116,7 +1116,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1127,7 +1127,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1251,7 +1251,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1264,7 +1264,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1275,7 +1275,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1286,7 +1286,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2317,7 +2317,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "M32&32" |] + Operands = [| Reg Sz32; Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2491,7 +2491,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8; FixedReg(Register.DX, Explicit) |] + Operands = [| Mem Sz8; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2515,7 +2515,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16; FixedReg(Register.DX, Explicit) |] + Operands = [| Mem Sz16; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2526,7 +2526,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; FixedReg(Register.DX, Explicit) |] + Operands = [| Mem Sz32; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2561,7 +2561,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); Mem Sz8 |] + Operands = [| FixedReg(Register.DX); Mem Sz8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2585,7 +2585,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); Mem Sz16 |] + Operands = [| FixedReg(Register.DX); Mem Sz16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2596,7 +2596,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit); Mem Sz32 |] + Operands = [| FixedReg(Register.DX); Mem Sz32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3864,7 +3864,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R16/R32/M16"; Sreg |] + Operands = [| RMdiff(Sz32, Sz16); Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4004,7 +4004,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4015,7 +4015,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4026,7 +4026,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4037,7 +4037,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4048,7 +4048,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4059,7 +4059,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4072,7 +4072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4083,7 +4083,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4094,7 +4094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4105,7 +4105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4116,7 +4116,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4127,7 +4127,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4140,7 +4140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4151,7 +4151,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4162,7 +4162,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4173,7 +4173,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4184,7 +4184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4195,7 +4195,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4208,7 +4208,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4219,7 +4219,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4230,7 +4230,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4241,7 +4241,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4252,7 +4252,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4263,7 +4263,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4276,7 +4276,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4287,7 +4287,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4298,7 +4298,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4309,7 +4309,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4320,7 +4320,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4331,7 +4331,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4344,7 +4344,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4355,7 +4355,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4366,7 +4366,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4377,7 +4377,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4388,7 +4388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4399,7 +4399,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4412,7 +4412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4423,7 +4423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4434,7 +4434,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4445,7 +4445,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4456,7 +4456,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4467,7 +4467,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4480,7 +4480,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg Sz16 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4491,7 +4491,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Reg Sz16; FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4502,7 +4502,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg Sz32 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4513,7 +4513,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg Sz64 |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4524,7 +4524,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Reg Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4535,7 +4535,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Reg Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4762,7 +4762,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] + Operands = [| FixedReg(Register.AL); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4773,7 +4773,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Moffs Sz8 |] + Operands = [| FixedReg(Register.AL); Moffs Sz8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4786,7 +4786,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Moffs Sz16 |] + Operands = [| FixedReg(Register.AX); Moffs Sz16 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4797,7 +4797,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Moffs Sz32 |] + Operands = [| FixedReg(Register.EAX); Moffs Sz32 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4808,7 +4808,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Moffs Sz64 |] + Operands = [| FixedReg(Register.RAX); Moffs Sz64 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4821,7 +4821,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] + Operands = [| Moffs Sz8; FixedReg(Register.AL) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4832,7 +4832,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz8; FixedReg(Register.AL, Explicit) |] + Operands = [| Moffs Sz8; FixedReg(Register.AL) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4845,7 +4845,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz16; FixedReg(Register.AX, Explicit) |] + Operands = [| Moffs Sz16; FixedReg(Register.AX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4856,7 +4856,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz32; FixedReg(Register.EAX, Explicit) |] + Operands = [| Moffs Sz32; FixedReg(Register.EAX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4867,7 +4867,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz64; FixedReg(Register.RAX, Explicit) |] + Operands = [| Moffs Sz64; FixedReg(Register.RAX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5020,7 +5020,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5033,7 +5033,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm Sz16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5044,7 +5044,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5055,7 +5055,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX, Explicit); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm Sz32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6765,7 +6765,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6776,7 +6776,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6787,7 +6787,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6798,7 +6798,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6809,7 +6809,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6820,7 +6820,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6831,7 +6831,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6842,7 +6842,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6855,7 +6855,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6866,7 +6866,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6877,7 +6877,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6888,7 +6888,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6899,7 +6899,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6910,7 +6910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6921,7 +6921,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6932,7 +6932,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6943,7 +6943,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6954,7 +6954,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6965,7 +6965,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6976,7 +6976,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6987,7 +6987,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6998,7 +6998,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7009,7 +7009,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7020,7 +7020,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7031,7 +7031,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7042,7 +7042,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7053,7 +7053,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7064,7 +7064,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7075,7 +7075,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7086,7 +7086,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7097,7 +7097,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7108,7 +7108,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7593,7 +7593,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Unknown "M14/28BYTE" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7725,7 +7725,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Unknown "M14/28BYTE" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8305,7 +8305,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Unknown "M94/108BYTE" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8316,7 +8316,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Unknown "M94/108BYTE" |] + Operands = [| Mem SzUnknown |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8771,7 +8771,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xE0uy - Operands = [| FixedReg(Register.AX, Explicit) |] + Operands = [| FixedReg(Register.AX) |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8858,7 +8858,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8871,7 +8871,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.AX); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8882,7 +8882,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit); Imm Sz8 |] + Operands = [| FixedReg(Register.EAX); Imm Sz8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8895,7 +8895,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.AL, Explicit) |] + Operands = [| Imm Sz8; FixedReg(Register.AL) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8908,7 +8908,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.AX, Explicit) |] + Operands = [| Imm Sz8; FixedReg(Register.AX) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8919,7 +8919,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.EAX, Explicit) |] + Operands = [| Imm Sz8; FixedReg(Register.EAX) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9017,8 +9017,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL, Explicit) - FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.AL); FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9031,8 +9030,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX, Explicit) - FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.AX); FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9043,8 +9041,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX, Explicit) - FixedReg(Register.DX, Explicit) |] + Operands = [| FixedReg(Register.EAX); FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9057,8 +9054,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit) - FixedReg(Register.AL, Explicit) |] + Operands = [| FixedReg(Register.DX); FixedReg(Register.AL) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9071,8 +9067,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit) - FixedReg(Register.AX, Explicit) |] + Operands = [| FixedReg(Register.DX); FixedReg(Register.AX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9083,8 +9078,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX, Explicit) - FixedReg(Register.EAX, Explicit) |] + Operands = [| FixedReg(Register.DX); FixedReg(Register.EAX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10956,7 +10950,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; Unknown "MIB" |] + Operands = [| BndReg; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11057,7 +11051,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "MIB"; BndReg |] + Operands = [| Mem SzUnknown; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11155,7 +11149,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "CR0–CR7" |] + Operands = [| Reg Sz32; CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11166,7 +11160,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "CR0–CR7" |] + Operands = [| Reg Sz64; CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11177,7 +11171,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz64; Unknown "CR8" |] + Operands = [| Reg Sz64; CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11190,7 +11184,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "DR0–DR7" |] + Operands = [| Reg Sz32; DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11201,7 +11195,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "DR0–DR7" |] + Operands = [| Reg Sz64; DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11214,7 +11208,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "CR0–CR7"; Reg Sz32 |] + Operands = [| CtrlReg; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11225,7 +11219,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "CR0–CR7"; Reg Sz64 |] + Operands = [| CtrlReg; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11236,7 +11230,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Unknown "CR8"; Reg Sz64 |] + Operands = [| CtrlReg; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11249,7 +11243,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "DR0–DR7"; Reg Sz32 |] + Operands = [| DebugReg; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11260,7 +11254,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "DR0–DR7"; Reg Sz64 |] + Operands = [| DebugReg; Reg Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15349,7 +15343,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.FS, Explicit) |] + Operands = [| FixedReg(Register.FS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15362,7 +15356,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.FS, Explicit) |] + Operands = [| FixedReg(Register.FS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15373,7 +15367,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.FS, Explicit) |] + Operands = [| FixedReg(Register.FS) |] OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -15384,7 +15378,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.FS, Explicit) |] + Operands = [| FixedReg(Register.FS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15480,7 +15474,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15491,7 +15485,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15502,7 +15496,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15519,7 +15513,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.GS, Explicit) |] + Operands = [| FixedReg(Register.GS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15532,7 +15526,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.GS, Explicit) |] + Operands = [| FixedReg(Register.GS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15543,7 +15537,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.GS, Explicit) |] + Operands = [| FixedReg(Register.GS) |] OpEn = OpEn.ZO Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -15554,7 +15548,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.GS, Explicit) |] + Operands = [| FixedReg(Register.GS) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15650,7 +15644,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15661,7 +15655,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15672,7 +15666,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL, Explicit) |] + Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15828,7 +15822,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Unknown "R64/M64" |] + Operands = [| RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -15915,10 +15909,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32 - FixedReg(Register.EDX, Implicit) - FixedReg(Register.EAX, Implicit) |] + ModRM = ModRMType.ModRMOp6 OpReg + Operands = [| Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15929,7 +15921,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "R16/R32/R64" |] + Operands = [| RegAddr |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15939,10 +15931,8 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32 - FixedReg(Register.EDX, Implicit) - FixedReg(Register.EAX, Implicit) |] + ModRM = ModRMType.ModRMOp6 OpReg + Operands = [| Reg Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18782,7 +18772,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Unknown "" |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18801,7 +18791,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Unknown "" |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18814,7 +18804,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Unknown "" |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19618,7 +19608,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Unknown "" |] + Operands = [| Reg Sz128; RM Sz128 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19688,7 +19678,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M384"; Unknown "" |] + Operands = [| Mem Sz384 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19699,7 +19689,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512; Unknown "" |] + Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19710,7 +19700,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "M384"; Unknown "" |] + Operands = [| Mem Sz384 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19721,7 +19711,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512; Unknown "" |] + Operands = [| Mem Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19762,7 +19752,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M384" |] + Operands = [| Reg Sz128; Mem Sz384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19773,10 +19763,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128 - Reg Sz128 - FixedReg(Register.EAX, Implicit) - Unknown "" |] + Operands = [| Reg Sz128; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19789,7 +19776,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Unknown "M384" |] + Operands = [| Reg Sz128; Mem Sz384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20118,7 +20105,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "R32/R64"; Mem Sz512 |] + Operands = [| RegAddr; Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20129,7 +20116,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Unknown "R32/R64"; Mem Sz512 |] + Operands = [| RegAddr; Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20140,7 +20127,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R16/R32/R64"; Mem Sz512 |] + Operands = [| RegAddr; Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20177,10 +20164,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 - Reg Sz32 - Unknown "" - Unknown "" |] + Operands = [| Reg Sz32; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20193,7 +20177,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Unknown "R32" |] + Operands = [| Reg Sz32; Reg Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21028,7 +21012,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xC0uy - Operands = [| Imm Sz8; FixedReg(Register.EAX, Implicit) |] + Operands = [| Imm Sz8 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21953,7 +21937,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21964,7 +21948,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21975,7 +21959,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21986,7 +21970,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21999,7 +21983,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22010,7 +21994,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22021,7 +22005,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22032,7 +22016,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22047,7 +22031,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22058,7 +22042,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22069,7 +22053,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22080,7 +22064,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22093,7 +22077,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22104,7 +22088,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22115,7 +22099,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22126,7 +22110,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22139,7 +22123,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22150,7 +22134,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22161,7 +22145,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22172,7 +22156,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22185,7 +22169,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22196,7 +22180,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22207,7 +22191,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22218,7 +22202,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22235,7 +22219,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22246,7 +22230,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22257,7 +22241,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22268,7 +22252,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22281,7 +22265,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22292,7 +22276,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22303,7 +22287,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Unknown "K3" |] + Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23583,7 +23567,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "R64/M64" |] + Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -23711,7 +23695,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23722,7 +23706,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23733,7 +23717,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23744,7 +23728,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23755,7 +23739,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23766,7 +23750,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23779,7 +23763,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23790,7 +23774,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23801,7 +23785,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23812,7 +23796,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23823,7 +23807,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23834,7 +23818,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23847,7 +23831,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23858,7 +23842,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23869,7 +23853,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23880,7 +23864,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23891,7 +23875,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23902,7 +23886,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23913,7 +23897,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -23924,7 +23908,7 @@ let (vexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.NA } @@ -24143,7 +24127,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64/M64"; Reg Sz128 |] + Operands = [| RM Sz64; Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -24245,7 +24229,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2/M16" |] + Operands = [| OpMaskReg; KM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24256,7 +24240,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2/M8" |] + Operands = [| OpMaskReg; KM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24267,7 +24251,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2/M64" |] + Operands = [| OpMaskReg; KM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24278,7 +24262,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2/M32" |] + Operands = [| OpMaskReg; KM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24291,7 +24275,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz16; Unknown "K1" |] + Operands = [| Mem Sz16; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24302,7 +24286,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz8; Unknown "K1" |] + Operands = [| Mem Sz8; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24313,7 +24297,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Unknown "K1" |] + Operands = [| Mem Sz64; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24324,7 +24308,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Unknown "K1" |] + Operands = [| Mem Sz32; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24337,7 +24321,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz32 |] + Operands = [| OpMaskReg; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24348,7 +24332,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz32 |] + Operands = [| OpMaskReg; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24359,7 +24343,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz64 |] + Operands = [| OpMaskReg; Reg Sz64 |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24370,7 +24354,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz32 |] + Operands = [| OpMaskReg; Reg Sz32 |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24383,7 +24367,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "K1" |] + Operands = [| Reg Sz32; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24394,7 +24378,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "K1" |] + Operands = [| Reg Sz32; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24405,7 +24389,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Unknown "K1" |] + Operands = [| Reg Sz64; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24416,7 +24400,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Unknown "K1" |] + Operands = [| Reg Sz32; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24437,7 +24421,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24448,7 +24432,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24459,7 +24443,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24470,7 +24454,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24483,7 +24467,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24494,7 +24478,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24505,7 +24489,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24516,7 +24500,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2" |] + Operands = [| OpMaskReg; OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27490,7 +27474,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1" |] + Operands = [| Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27505,7 +27489,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] + Operands = [| Reg Sz1024; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27516,7 +27500,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "SIBMEM" |] + Operands = [| Reg Sz1024; Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27527,7 +27511,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "SIBMEM"; Unknown "TMM1" |] + Operands = [| Mem SzUnknown; Reg Sz1024 |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27847,7 +27831,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27858,7 +27842,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27873,7 +27857,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27884,7 +27868,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27895,7 +27879,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27906,7 +27890,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "TMM1"; Unknown "TMM2"; Unknown "TMM3" |] + Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28171,7 +28155,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28182,7 +28166,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28193,7 +28177,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28204,7 +28188,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28217,7 +28201,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28228,7 +28212,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28239,7 +28223,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28250,7 +28234,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28263,7 +28247,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28274,7 +28258,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM32X"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28285,7 +28269,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM32X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28296,7 +28280,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM32Y"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28309,7 +28293,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28320,7 +28304,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "VM64Y"; Reg Sz256 |] + Operands = [| Reg Sz256; MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28331,7 +28315,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64X"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28342,7 +28326,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "VM64Y"; Reg Sz128 |] + Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30479,7 +30463,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30490,7 +30474,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30573,7 +30557,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30584,7 +30568,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30595,7 +30579,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30606,7 +30590,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30617,7 +30601,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30628,7 +30612,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30641,7 +30625,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; Unknown "R32B"; RM Sz32 |] + Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30652,7 +30636,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; Unknown "R64B"; RM Sz64 |] + Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30665,7 +30649,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30676,7 +30660,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30687,7 +30671,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30698,7 +30682,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30709,7 +30693,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R32A"; RM Sz32; Unknown "R32B" |] + Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30720,7 +30704,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30731,7 +30715,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30742,7 +30726,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64A"; RM Sz64; Unknown "R64B" |] + Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31105,7 +31089,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -31267,7 +31251,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31278,7 +31262,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31291,7 +31275,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31302,7 +31286,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31315,7 +31299,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31326,7 +31310,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31339,7 +31323,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31350,7 +31334,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Unknown "K2"; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32238,7 +32222,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M64{K1}"; Reg Sz128 |] + Operands = [| Mem Sz64; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32260,7 +32244,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M32{K1}"; Reg Sz128 |] + Operands = [| Mem Sz32; Reg Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32464,7 +32448,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32475,7 +32459,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32486,7 +32470,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32497,7 +32481,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32508,7 +32492,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32519,7 +32503,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32532,7 +32516,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32543,7 +32527,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32554,7 +32538,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32565,7 +32549,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32576,7 +32560,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32587,7 +32571,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32871,7 +32855,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -32882,7 +32866,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz32, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32893,7 +32877,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -32974,7 +32958,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz32; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32985,7 +32969,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz64; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -32996,7 +32980,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz32; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33007,7 +32991,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz64; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33020,7 +33004,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz32; RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33031,7 +33015,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz64; RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33042,7 +33026,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz32; RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33053,7 +33037,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz64; RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33066,7 +33050,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33077,7 +33061,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33090,7 +33074,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33101,7 +33085,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33180,7 +33164,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33191,7 +33175,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33202,7 +33186,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33213,7 +33197,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33224,7 +33208,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33235,7 +33219,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33246,7 +33230,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33257,7 +33241,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33274,7 +33258,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33285,7 +33269,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33296,7 +33280,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33307,7 +33291,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33318,7 +33302,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33329,7 +33313,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33342,7 +33326,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33353,7 +33337,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33364,7 +33348,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33375,7 +33359,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33386,7 +33370,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33397,7 +33381,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33410,7 +33394,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33421,7 +33405,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33432,7 +33416,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33443,7 +33427,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33454,7 +33438,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33465,7 +33449,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33478,7 +33462,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33489,7 +33473,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33500,7 +33484,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33511,7 +33495,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33522,7 +33506,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33533,7 +33517,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33546,7 +33530,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33557,7 +33541,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33568,7 +33552,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33579,7 +33563,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33590,7 +33574,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33601,7 +33585,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33612,7 +33596,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33623,7 +33607,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33636,7 +33620,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33647,7 +33631,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33658,7 +33642,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33669,7 +33653,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33680,7 +33664,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33691,7 +33675,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33702,7 +33686,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33713,7 +33697,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33726,7 +33710,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33737,7 +33721,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33748,7 +33732,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33759,7 +33743,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33770,7 +33754,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33781,7 +33765,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33792,7 +33776,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33803,7 +33787,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33816,7 +33800,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33827,7 +33811,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33838,7 +33822,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33849,7 +33833,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33860,7 +33844,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33871,7 +33855,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33882,7 +33866,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33893,7 +33877,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33904,7 +33888,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33915,7 +33899,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33926,7 +33910,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33937,7 +33921,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33950,7 +33934,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33961,7 +33945,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33972,7 +33956,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33983,7 +33967,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33994,7 +33978,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34005,7 +33989,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34016,7 +34000,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34027,7 +34011,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34040,7 +34024,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34051,7 +34035,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34062,7 +34046,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34073,7 +34057,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34084,7 +34068,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34095,7 +34079,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34106,7 +34090,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34117,7 +34101,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34130,7 +34114,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34141,7 +34125,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34152,7 +34136,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34163,7 +34147,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34174,7 +34158,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34185,7 +34169,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34196,7 +34180,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34207,7 +34191,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34220,7 +34204,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34231,7 +34215,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34242,7 +34226,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34253,7 +34237,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34264,7 +34248,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34275,7 +34259,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34286,7 +34270,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34297,7 +34281,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34380,7 +34364,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34391,7 +34375,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34402,7 +34386,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34450,7 +34434,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34461,7 +34445,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34472,7 +34456,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34485,7 +34469,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34496,7 +34480,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34507,7 +34491,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34520,7 +34504,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34531,7 +34515,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34542,7 +34526,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34660,7 +34644,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34671,7 +34655,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34682,7 +34666,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34695,7 +34679,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34706,7 +34690,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34717,7 +34701,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34730,7 +34714,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34741,7 +34725,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34752,7 +34736,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34765,7 +34749,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34776,7 +34760,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34787,7 +34771,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34811,7 +34795,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "R64/M64" |] + Operands = [| Reg Sz128; RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -35024,7 +35008,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35035,7 +35019,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35046,7 +35030,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35126,7 +35110,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35137,7 +35121,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35148,7 +35132,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35159,7 +35143,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35170,7 +35154,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35181,7 +35165,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35192,7 +35176,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35203,7 +35187,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35214,7 +35198,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35226,8 +35210,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35237,8 +35221,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35248,8 +35232,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35259,8 +35243,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35270,8 +35254,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35281,8 +35265,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35292,8 +35276,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35303,8 +35287,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35314,8 +35298,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35325,8 +35309,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35336,8 +35320,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35347,8 +35331,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35358,8 +35342,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35369,8 +35353,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35380,8 +35364,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35391,8 +35375,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35402,8 +35386,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35413,8 +35397,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35424,8 +35408,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35435,8 +35419,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35446,8 +35430,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35457,8 +35441,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35468,8 +35452,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35479,8 +35463,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35493,7 +35477,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35504,7 +35488,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35515,7 +35499,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35525,8 +35509,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35536,8 +35520,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35547,8 +35531,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35559,7 +35543,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35570,7 +35554,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35581,7 +35565,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 OpRegMem Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.FullMem } @@ -35591,8 +35575,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35602,8 +35586,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35613,8 +35597,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] - OpEn = OpEn.None + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid TupleType = TupleType.Full } @@ -35626,7 +35610,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35637,7 +35621,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35648,7 +35632,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35661,7 +35645,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35672,7 +35656,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35683,7 +35667,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35696,7 +35680,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35707,7 +35691,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35718,7 +35702,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35733,7 +35717,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35744,7 +35728,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35755,7 +35739,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35766,7 +35750,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35777,7 +35761,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35788,7 +35772,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35799,7 +35783,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35810,7 +35794,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35821,7 +35805,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35832,7 +35816,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35843,7 +35827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35854,7 +35838,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35865,7 +35849,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz32; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35876,7 +35860,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz64; RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -35887,7 +35871,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz32; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35898,7 +35882,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz64; RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -35911,7 +35895,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35922,7 +35906,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35933,7 +35917,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35944,7 +35928,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35955,7 +35939,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35966,7 +35950,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35977,7 +35961,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35988,7 +35972,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35999,7 +35983,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36010,7 +35994,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36021,7 +36005,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36032,7 +36016,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcstEr(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36043,7 +36027,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz32; RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36054,7 +36038,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz64; RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36065,7 +36049,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz32; RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36076,7 +36060,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz64; RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36089,7 +36073,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36100,7 +36084,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36111,7 +36095,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36122,7 +36106,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36133,7 +36117,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36144,7 +36128,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36155,7 +36139,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36166,7 +36150,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36177,7 +36161,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36188,7 +36172,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36199,7 +36183,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36210,7 +36194,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36221,7 +36205,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36232,7 +36216,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36243,7 +36227,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36254,7 +36238,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36265,7 +36249,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36276,7 +36260,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36289,7 +36273,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36300,7 +36284,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36311,7 +36295,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36322,7 +36306,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36333,7 +36317,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36344,7 +36328,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcstEr(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36366,7 +36350,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36377,7 +36361,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M32{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz32, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36388,7 +36372,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R/M64{ER}" |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36416,7 +36400,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64/M64"; Reg Sz128 |] + Operands = [| RM Sz64; Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36772,7 +36756,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36783,7 +36770,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36794,7 +36784,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36805,7 +36798,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36816,7 +36812,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36827,7 +36826,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36838,10 +36840,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}" - Reg Sz128 - RMdiff(Sz128, Sz64) - Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36852,10 +36851,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}" - Reg Sz128 - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36896,7 +36892,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36907,7 +36906,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36918,7 +36920,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36929,7 +36934,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36940,7 +36948,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36951,7 +36962,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37089,7 +37103,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37100,7 +37114,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37111,7 +37125,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37279,7 +37293,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37290,7 +37304,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37301,7 +37315,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37312,7 +37326,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37323,7 +37337,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37334,7 +37348,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37452,7 +37466,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37463,7 +37477,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37474,7 +37488,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37485,7 +37499,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37496,7 +37510,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37507,7 +37521,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37763,7 +37777,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37774,7 +37788,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37785,7 +37799,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37796,7 +37810,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37807,7 +37821,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37818,7 +37832,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37829,7 +37843,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37840,7 +37854,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37851,7 +37865,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37862,7 +37876,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37873,7 +37887,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37884,7 +37898,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38037,7 +38051,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38048,7 +38062,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38059,7 +38073,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38070,7 +38084,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38081,7 +38095,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38092,7 +38106,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38210,7 +38224,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38221,7 +38235,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38232,7 +38246,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38243,7 +38257,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38254,7 +38268,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38265,7 +38279,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38385,7 +38399,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38396,7 +38410,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38407,7 +38421,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38562,7 +38576,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38573,7 +38587,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38584,7 +38598,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38597,7 +38611,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38608,7 +38622,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38619,7 +38633,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38702,7 +38716,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38713,7 +38727,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38724,7 +38738,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38866,7 +38880,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38877,7 +38891,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38888,7 +38902,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38901,7 +38915,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38912,7 +38926,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38923,7 +38937,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39166,7 +39180,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg Sz512; RMSae(Sz256, Sz256) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39245,7 +39259,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39256,7 +39270,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39267,7 +39281,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39278,7 +39292,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39289,7 +39303,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39300,7 +39314,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39346,7 +39360,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39357,7 +39371,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39368,7 +39382,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39379,7 +39393,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39390,7 +39404,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39401,7 +39415,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39414,7 +39428,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39425,7 +39439,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39436,7 +39450,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39447,7 +39461,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39683,7 +39697,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39694,7 +39708,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39705,7 +39719,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39718,7 +39732,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39729,7 +39743,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39740,7 +39754,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40161,7 +40175,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40172,7 +40186,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40183,7 +40197,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40194,7 +40208,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40205,7 +40219,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40216,7 +40230,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40227,7 +40241,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40238,7 +40252,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40249,7 +40263,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40260,7 +40274,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40271,7 +40285,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40282,7 +40296,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40295,7 +40309,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40306,7 +40320,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40317,7 +40331,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40328,7 +40342,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40339,7 +40353,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40350,7 +40364,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40361,7 +40375,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40372,7 +40386,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40383,7 +40397,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40394,7 +40408,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40405,7 +40419,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40416,7 +40430,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40429,7 +40443,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40440,7 +40454,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40451,7 +40465,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40462,7 +40476,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40473,7 +40487,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40484,7 +40498,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40495,7 +40509,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40506,7 +40520,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40517,7 +40531,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40530,7 +40544,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40541,7 +40555,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40552,7 +40566,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40563,7 +40577,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz128 |] + Operands = [| OpMaskReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40574,7 +40588,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz256 |] + Operands = [| OpMaskReg; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40585,7 +40599,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz512 |] + Operands = [| OpMaskReg; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40596,7 +40610,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz128 |] + Operands = [| OpMaskReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40607,7 +40621,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz256 |] + Operands = [| OpMaskReg; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40618,7 +40632,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz512 |] + Operands = [| OpMaskReg; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40664,7 +40678,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40675,7 +40689,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40686,7 +40700,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40699,7 +40713,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40710,7 +40724,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40721,7 +40735,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40734,7 +40748,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40745,7 +40759,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40756,7 +40770,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40767,7 +40781,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40778,7 +40792,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40789,7 +40803,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40802,7 +40816,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40813,7 +40827,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41238,7 +41252,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41249,7 +41263,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41260,7 +41274,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41271,7 +41285,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41284,7 +41298,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41295,7 +41309,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41306,7 +41320,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41352,7 +41366,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41363,7 +41377,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41374,7 +41388,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41385,7 +41399,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41396,7 +41410,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41407,7 +41421,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41420,7 +41434,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41431,7 +41445,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41442,7 +41456,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41453,7 +41467,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41464,7 +41478,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41475,7 +41489,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41486,7 +41500,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz128 |] + Operands = [| OpMaskReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41497,7 +41511,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz256 |] + Operands = [| OpMaskReg; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41508,7 +41522,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz512 |] + Operands = [| OpMaskReg; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41519,7 +41533,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz128 |] + Operands = [| OpMaskReg; Reg Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41530,7 +41544,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz256 |] + Operands = [| OpMaskReg; Reg Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41541,7 +41555,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1"; Reg Sz512 |] + Operands = [| OpMaskReg; Reg Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41587,7 +41601,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "K1" |] + Operands = [| Reg Sz128; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41598,7 +41612,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Unknown "K1" |] + Operands = [| Reg Sz256; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41609,7 +41623,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "K1" |] + Operands = [| Reg Sz512; OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41622,7 +41636,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41633,7 +41647,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41644,7 +41658,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41655,7 +41669,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41666,7 +41680,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41677,7 +41691,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41725,7 +41739,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41736,7 +41750,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41747,7 +41761,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41758,7 +41772,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41769,7 +41783,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41780,7 +41794,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41828,7 +41842,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41839,7 +41853,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41850,7 +41864,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41861,7 +41875,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41872,7 +41886,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41883,7 +41897,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41896,7 +41910,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41907,7 +41921,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41918,7 +41932,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41929,7 +41943,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41940,7 +41954,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41951,7 +41965,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41966,7 +41980,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41977,7 +41991,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41988,7 +42002,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41999,7 +42013,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42010,7 +42024,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42021,7 +42035,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42034,7 +42048,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42045,7 +42059,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42058,7 +42072,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42069,7 +42083,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42080,7 +42094,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42091,7 +42105,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42102,7 +42116,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42113,7 +42127,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42126,7 +42140,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42137,7 +42151,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42148,7 +42162,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42159,7 +42173,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42170,7 +42184,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42181,7 +42195,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42194,7 +42208,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42205,7 +42219,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42216,7 +42230,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42227,7 +42241,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42238,7 +42252,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42249,7 +42263,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42262,7 +42276,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42273,7 +42287,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42284,7 +42298,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42295,7 +42309,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42306,7 +42320,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42317,7 +42331,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42338,7 +42352,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42349,7 +42363,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42360,7 +42374,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42371,7 +42385,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42382,7 +42396,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42393,7 +42407,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42430,7 +42444,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42441,7 +42455,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42452,7 +42466,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42463,7 +42477,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42474,7 +42488,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42485,7 +42499,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42522,7 +42536,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42533,7 +42547,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42544,7 +42558,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42557,7 +42571,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42568,7 +42582,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42579,7 +42593,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42592,7 +42606,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42603,7 +42617,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42614,7 +42628,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42625,7 +42639,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42636,7 +42650,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42647,7 +42661,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42658,7 +42672,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42671,7 +42685,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42682,7 +42696,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42693,7 +42707,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42704,7 +42718,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42785,7 +42799,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42796,7 +42810,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42807,7 +42821,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42818,7 +42832,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42829,7 +42843,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42840,7 +42854,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43176,7 +43190,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M128{K1}"; Reg Sz128 |] + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43198,7 +43212,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M256{K1}"; Reg Sz256 |] + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43220,7 +43234,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M512{K1}"; Reg Sz512 |] + Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43242,7 +43256,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M128{K1}"; Reg Sz128 |] + Operands = [| Mem Sz128; Reg Sz128 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43264,7 +43278,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M256{K1}"; Reg Sz256 |] + Operands = [| Mem Sz256; Reg Sz256 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43286,7 +43300,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "M512{K1}"; Reg Sz512 |] + Operands = [| Mem Sz512; Reg Sz512 |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43310,7 +43324,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43321,7 +43335,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43332,7 +43346,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43343,7 +43357,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43354,7 +43368,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43365,7 +43379,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43378,7 +43392,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43389,7 +43403,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43400,7 +43414,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43411,7 +43425,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43422,7 +43436,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43433,7 +43447,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43516,7 +43530,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43527,7 +43541,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43538,7 +43552,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43549,7 +43563,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43560,7 +43574,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43571,7 +43585,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1+1"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43633,7 +43647,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43644,7 +43658,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43655,7 +43669,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43666,7 +43680,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43677,7 +43691,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43688,7 +43702,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43701,7 +43715,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43712,7 +43726,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43723,7 +43737,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43734,7 +43748,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43745,7 +43759,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43756,7 +43770,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz512 |] + Operands = [| Reg Sz256; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43802,7 +43816,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43813,7 +43827,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43824,7 +43838,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43835,7 +43849,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43846,7 +43860,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43857,7 +43871,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43940,7 +43954,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43951,7 +43965,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43962,7 +43976,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43973,7 +43987,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43984,7 +43998,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43995,7 +44009,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44008,7 +44022,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44019,7 +44033,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44030,7 +44044,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44041,7 +44055,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44052,7 +44066,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44063,7 +44077,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44352,7 +44366,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44363,7 +44377,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44374,7 +44388,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44385,7 +44399,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44396,7 +44410,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44407,7 +44421,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44420,7 +44434,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44431,7 +44445,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44442,7 +44456,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44453,7 +44467,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44464,7 +44478,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44475,7 +44489,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44494,7 +44508,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44505,7 +44519,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44516,7 +44530,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44881,7 +44895,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44892,7 +44906,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44903,7 +44917,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44916,7 +44930,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz128; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44927,7 +44941,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] + Operands = [| Reg Sz256; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44938,7 +44952,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] + Operands = [| Reg Sz512; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44949,7 +44963,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz128; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44960,7 +44974,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz256; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44971,7 +44985,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] + Operands = [| Reg Sz512; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44984,7 +44998,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44995,7 +45009,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45006,7 +45020,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] + Operands = [| Reg Sz256; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45017,7 +45031,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45028,7 +45042,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] + Operands = [| Reg Sz256; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45039,7 +45053,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] + Operands = [| Reg Sz512; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45052,7 +45066,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz128; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45063,7 +45077,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM32Y" |] + Operands = [| Reg Sz256; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45074,7 +45088,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Z" |] + Operands = [| Reg Sz512; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45085,7 +45099,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz128; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45096,7 +45110,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM32X" |] + Operands = [| Reg Sz256; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45107,7 +45121,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM32Y" |] + Operands = [| Reg Sz512; MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45120,7 +45134,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45131,7 +45145,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64Y" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45142,7 +45156,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Z" |] + Operands = [| Reg Sz256; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45153,7 +45167,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "XMM1{K1}"; Unknown "VM64X" |] + Operands = [| Reg Sz128; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45164,7 +45178,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "YMM1{K1}"; Unknown "VM64Y" |] + Operands = [| Reg Sz256; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45175,7 +45189,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "ZMM1{K1}"; Unknown "VM64Z" |] + Operands = [| Reg Sz512; MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45192,7 +45206,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45203,7 +45217,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45214,7 +45228,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45225,7 +45239,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45236,7 +45250,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45247,7 +45261,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45260,7 +45274,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45271,7 +45285,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45282,7 +45296,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45293,7 +45307,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45304,7 +45318,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45315,7 +45329,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45328,7 +45342,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45339,7 +45353,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45350,7 +45364,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45361,7 +45375,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45372,7 +45386,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45383,7 +45397,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45396,7 +45410,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45407,7 +45421,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45420,7 +45434,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45431,7 +45445,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45442,7 +45456,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45453,7 +45467,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45464,7 +45478,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45475,7 +45489,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45486,7 +45500,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45499,7 +45513,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45510,7 +45524,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45521,7 +45535,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45534,7 +45548,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "XMM0{K1}{Z}"; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45545,7 +45559,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45556,7 +45570,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45567,7 +45581,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45578,7 +45592,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45589,7 +45603,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45602,7 +45616,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45613,7 +45627,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45626,7 +45640,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45637,7 +45651,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45648,7 +45662,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45659,7 +45673,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45670,7 +45684,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45681,7 +45695,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45694,7 +45708,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45705,7 +45719,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45718,7 +45732,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45729,7 +45743,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45740,7 +45754,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45751,7 +45765,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45762,7 +45776,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32X{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45773,7 +45787,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Y{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45786,7 +45800,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45797,7 +45811,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45808,7 +45822,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45819,7 +45833,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45830,7 +45844,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45841,7 +45855,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz64; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45854,7 +45868,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45865,7 +45879,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45876,7 +45890,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45887,7 +45901,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45898,7 +45912,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Y{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45909,7 +45923,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM32Z{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45922,7 +45936,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45933,7 +45947,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Y{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45944,7 +45958,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Z{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45955,7 +45969,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64X{K1}"; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg Sz128 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45966,7 +45980,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Y{K1}"; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg Sz256 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45977,7 +45991,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Unknown "VM64Z{K1}"; Reg Sz512 |] + Operands = [| MemVSIB Sz64; Reg Sz512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45994,7 +46008,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46005,7 +46019,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46016,7 +46030,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46027,7 +46041,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46038,7 +46052,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46049,7 +46063,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46062,7 +46076,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46073,7 +46087,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46084,7 +46098,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46095,7 +46109,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46106,7 +46120,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46117,7 +46131,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46130,7 +46144,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46141,7 +46155,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46152,7 +46166,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46163,7 +46177,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46174,7 +46188,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46185,7 +46199,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46198,7 +46212,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46209,7 +46223,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46222,7 +46236,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46233,7 +46247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46244,7 +46258,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46255,7 +46269,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46266,7 +46280,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46277,7 +46291,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46288,7 +46302,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Unknown "ZMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46301,7 +46315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46312,7 +46326,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46323,7 +46337,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Unknown "XMM2+3"; Mem Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46336,7 +46350,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46347,7 +46361,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46358,7 +46372,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46369,7 +46383,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46380,7 +46394,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46391,7 +46405,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46404,7 +46418,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46415,7 +46429,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46428,7 +46442,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46439,7 +46453,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46450,7 +46464,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46461,7 +46475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46472,7 +46486,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46483,7 +46497,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46496,7 +46510,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46507,7 +46521,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46528,7 +46542,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46539,7 +46553,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46550,7 +46564,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46563,7 +46577,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46574,7 +46588,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46585,7 +46599,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46598,7 +46612,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46609,7 +46623,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46620,7 +46634,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46631,7 +46645,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46642,7 +46656,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46653,7 +46667,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46666,7 +46680,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46677,7 +46691,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46688,7 +46702,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46699,7 +46713,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46710,7 +46724,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46721,7 +46735,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46734,7 +46748,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46745,7 +46759,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46756,7 +46770,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46767,7 +46781,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46778,7 +46792,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46789,7 +46803,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46802,7 +46816,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46813,7 +46827,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46826,7 +46840,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46837,7 +46851,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46848,7 +46862,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46859,7 +46873,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46870,7 +46884,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46881,7 +46895,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46894,7 +46908,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46905,7 +46919,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46918,7 +46932,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46929,7 +46943,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46940,7 +46954,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46951,7 +46965,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46962,7 +46976,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46973,7 +46987,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46986,7 +47000,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46997,7 +47011,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47010,7 +47024,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47021,7 +47035,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47032,7 +47046,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47043,7 +47057,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47054,7 +47068,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47065,7 +47079,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47078,7 +47092,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47089,7 +47103,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47110,7 +47124,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47121,7 +47135,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47132,7 +47146,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47143,7 +47157,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47154,7 +47168,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47165,7 +47179,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47180,7 +47194,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Unknown "VM32Z{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47191,7 +47205,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Unknown "VM32Y{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47202,7 +47216,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "VM32Z{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47213,7 +47227,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "VM32Y{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47224,7 +47238,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "VM32Z{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47235,7 +47249,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "VM32Y{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47246,7 +47260,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "VM32Z{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47257,7 +47271,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "VM32Y{K1}" |] + Operands = [| MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47270,7 +47284,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47281,7 +47295,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47292,7 +47306,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47303,7 +47317,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47314,7 +47328,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47325,7 +47339,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47336,7 +47350,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47347,7 +47361,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Unknown "VM64Z{K1}" |] + Operands = [| MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47360,7 +47374,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47371,7 +47385,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47386,7 +47400,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47397,7 +47411,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47410,7 +47424,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47421,7 +47435,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47434,7 +47448,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47445,7 +47459,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47458,7 +47472,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47469,7 +47483,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47751,7 +47765,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47762,7 +47776,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47775,7 +47789,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47786,7 +47800,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47801,7 +47815,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47812,7 +47829,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47823,7 +47843,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47834,7 +47857,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47845,7 +47871,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47856,7 +47885,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47869,7 +47901,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47880,7 +47912,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47891,7 +47923,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47904,7 +47936,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47915,7 +47947,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47926,7 +47958,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47943,7 +47975,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47954,7 +47986,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47965,7 +47997,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47976,7 +48008,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47987,7 +48019,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47998,7 +48030,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48011,7 +48043,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48022,7 +48054,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48033,7 +48065,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48046,7 +48078,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48057,7 +48089,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48070,7 +48102,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48169,7 +48201,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "R64/M64"; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -48359,7 +48391,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Unknown "ZMM2{SAE}"; Imm Sz8 |] + Operands = [| RM Sz256; RegSae Sz512; Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48372,7 +48404,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48383,7 +48418,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48394,7 +48432,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48405,7 +48446,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48416,7 +48460,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48427,7 +48474,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48440,7 +48490,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48451,7 +48504,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48462,7 +48518,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48473,7 +48532,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48484,7 +48546,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48495,7 +48560,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48545,7 +48613,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Unknown "R64/M64"; Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -48558,7 +48626,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48569,7 +48640,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48580,7 +48654,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48591,7 +48668,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48606,7 +48686,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48617,7 +48700,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48628,7 +48714,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48639,7 +48728,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48650,7 +48742,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48661,7 +48756,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48674,7 +48772,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48685,7 +48783,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48696,7 +48794,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48707,7 +48805,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48718,7 +48816,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48729,7 +48827,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48740,7 +48838,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48751,7 +48849,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48762,7 +48860,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48775,7 +48873,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48786,7 +48884,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48797,7 +48895,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48986,7 +49084,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48997,7 +49095,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49008,7 +49106,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49019,7 +49117,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49030,7 +49128,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49041,7 +49139,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49054,7 +49152,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49065,7 +49163,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49076,7 +49174,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49087,7 +49185,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49098,7 +49196,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49109,7 +49207,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49161,7 +49259,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49172,7 +49273,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49183,7 +49287,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49194,7 +49301,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49264,7 +49374,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49275,7 +49388,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49286,7 +49402,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49297,7 +49416,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49308,7 +49430,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49319,7 +49444,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49332,7 +49460,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49343,7 +49471,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49360,7 +49488,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49371,7 +49502,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49382,7 +49516,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49393,7 +49530,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49404,7 +49544,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49415,7 +49558,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49428,7 +49574,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49439,7 +49585,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49452,7 +49598,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49463,7 +49609,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49474,7 +49620,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49485,7 +49631,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49496,7 +49642,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49507,7 +49653,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49518,7 +49664,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49529,7 +49675,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49540,7 +49686,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49552,11 +49698,8 @@ let (evexThree3A: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128 - Reg Sz128 - RMdiff(Sz128, Sz64) - Unknown "IMM8/R" |] + ModRM = ModRMType.ModRM OpRegMem + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49567,7 +49710,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49578,7 +49721,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49619,7 +49762,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49630,7 +49773,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49641,7 +49784,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49652,7 +49795,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49663,7 +49806,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49674,7 +49817,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49685,7 +49828,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49696,7 +49839,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49707,7 +49850,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49720,7 +49863,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(Sz128, Sz64); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49731,7 +49874,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49742,7 +49885,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K2{K1}"; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(Sz128, Sz32); Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49806,7 +49949,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49817,7 +49963,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49828,7 +49977,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49839,7 +49991,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49850,7 +50005,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49861,7 +50019,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49909,7 +50070,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49920,7 +50084,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49931,7 +50098,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49942,7 +50112,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49953,7 +50126,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49964,7 +50140,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50133,7 +50312,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz128 + RMBcst(Sz128, Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50144,7 +50326,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz256 + RMBcst(Sz256, Sz256, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50155,7 +50340,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}"; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg Sz512 + RMBcstSae(Sz512, Sz512, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50166,10 +50354,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Unknown "K1{K2}" - Reg Sz128 - RMdiff(Sz128, Sz16) - Imm Sz8 |] + Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50204,7 +50389,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50215,7 +50403,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50226,7 +50417,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50239,7 +50433,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg Sz128 + Reg Sz128 + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50250,7 +50447,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg Sz256 + Reg Sz256 + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50261,7 +50461,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg Sz512 + Reg Sz512 + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index e1bec52f4..301e7f8c4 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -42,21 +42,61 @@ type REXPrefixType = type OperandType = | NoOpr + /// Register or Memory. | RM of OprSize + /// Register or Memory operand with different sizes. | RMdiff of OprSize * OprSize + /// Register or Memory with embedded rounding {er} (only EVEX). + | RMEr of OprSize * OprSize + /// Register or Memory with suppress-all-exceptions {sae} (only EVEX). + | RMSae of OprSize * OprSize + /// Register or Memory with broadcast (only EVEX). + | RMBcst of OprSize * OprSize * OprSize + /// Register or Memory with broadcast and {er} (only EVEX). + | RMBcstEr of OprSize * OprSize * OprSize + /// Register or Memory with broadcast and {sae} (only EVEX). + | RMBcstSae of OprSize * OprSize * OprSize + /// Register with suppress-all-exceptions {sae} (only EVEX). + | RegSae of OprSize + /// Register. | Reg of OprSize + /// Address-size-dependent register operand. + | RegAddr + /// Opmask register. + | OpMaskReg + /// Opmask register or memory. + | KM of OprSize + /// Segment register. | Sreg - | FixedReg of Register * Visibility + /// Control register. + | CtrlReg + /// Debug register. + | DebugReg + /// Fixed register. + | FixedReg of Register + /// ST(i) register. | STReg of Register option + /// Bound register or memory. | BM of OprSize + /// Bound register. | BndReg + /// MMX register or memory. | MM of OprSize + /// MMX register. | MMXReg + /// Memory. | Mem of OprSize + /// Memory with VSIB addressing (eg. vm32x). + | MemVSIB of OprSize + /// Memory offset. | Moffs of OprSize + /// Far memory offset. | Far of OprSize + /// Immediate. | Imm of OprSize + /// Fixed immediate. | FixedImm of int + /// Relative offset. | Rel of OprSize | Unknown of string (* XXX: Temp *) @@ -69,13 +109,11 @@ and OprSize = | Sz80 | Sz128 | Sz256 + | Sz384 | Sz512 + | Sz1024 | SzUnknown -and Visibility = - | Explicit - | Implicit - type ModRMType = | NoModRM | ModRM of OprType (* /r *) @@ -131,7 +169,8 @@ type OpEn = | S = 32 | TD = 33 | VM = 34 - | ZO = 35 + | VMI = 35 + | ZO = 36 type Mode64 = | None = 0 diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 53001917c..3dcd20288 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -73,7 +73,7 @@ type IntelParser(wordSz, reader) = Array.map (fun o -> match o with | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz - | FixedReg(Register.AX, Explicit) -> Some Sz16 + | FixedReg(Register.AX) -> Some Sz16 | _ -> None) operands |> Array.distinct @@ -145,11 +145,24 @@ type IntelParser(wordSz, reader) = insPref = Legacy NP || insPref = Mandatory NP else false + let isImplicit16BitOp = function + | Opcode.CBW + | Opcode.CWD + | Opcode.PUSHF + | Opcode.POPF + | Opcode.PUSHA + | Opcode.POPA + | Opcode.MOVSW | Opcode.CMPSW | Opcode.SCASW | Opcode.LODSW | Opcode.STOSW + | Opcode.INSW | Opcode.OUTSW + | Opcode.IRET -> true + | _ -> false + let contains16BitOperandSize oprSz op = match oprSz with | [| Some Sz16 |] when op = Opcode.RET -> false | [| Some Sz16; _ |] when op = Opcode.ENTER -> false | [| None; Some Sz16 |] when op = Opcode.MOV -> false + | [| None |] when isImplicit16BitOp op -> true | [| Some Sz16 |] | [| Some Sz16; _ |] | [| None; Some Sz16 |] (* Temp *) -> true @@ -161,7 +174,7 @@ type IntelParser(wordSz, reader) = let oprSz = getOperandSize insCore.Operands if contains16BitOperandSize oprSz insCore.Opcode then // FIXME: 16-bit operands do not always require a 66h prefix. - pref = Prefix.OPSIZE + pref &&& Prefix.OPSIZE = Prefix.OPSIZE else true let matchesCPUMode wordSize mode64 compat = @@ -267,7 +280,9 @@ type IntelParser(wordSz, reader) = | OprSize.Sz80 -> 80 | OprSize.Sz128 -> 128 | OprSize.Sz256 -> 256 + | OprSize.Sz384 -> 384 | OprSize.Sz512 -> 512 + | OprSize.Sz1024 -> 1024 | OprSize.SzUnknown -> 0 let getImmediateSize = function @@ -288,6 +303,10 @@ type IntelParser(wordSz, reader) = let effAddrSz = ParsingHelper.GetEffAddrSize phlp setMemoryOperandContext phlp effAddrSz regSz memSz + let getSizeCondForImmediate = function + | Opcode.POP | Opcode.PUSH -> SzCond.D64 + | _ -> SzCond.Normal + let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) i = function | RM sz -> @@ -308,11 +327,19 @@ type IntelParser(wordSz, reader) = let regBit = Operands.getRM (uint8 ic.OpcodeByte) OperandParsers.getOprFromRegGrpREX regBit phlp | Reg sz -> + let sz = oprSizeToRegType sz + setMemoryOperandContextWithCurrentAddr phlp sz sz match ic.OpEn with | OpEn.RVM | OpEn.RVMI when i = 1 -> OperandParsers.parseVVVVReg phlp + | OpEn.VMI when i = 0 -> OperandParsers.parseVVVVReg phlp + | OpEn.RM when i = 1 -> + OperandParsers.findRegRmAndSIBBase phlp.MemEffRegSize phlp.REXPrefix + (Operands.getRM modRM) |> OprReg + | OpEn.MI -> + OperandParsers.findRegRmAndSIBBase phlp.MemEffRegSize phlp.REXPrefix + (Operands.getRM modRM) |> OprReg | _ -> - OperandParsers.findRegRBits (oprSizeToRegType sz) phlp.REXPrefix - (Operands.getReg modRM) + OperandParsers.findRegRBits sz phlp.REXPrefix (Operands.getReg modRM) |> OprReg | Mem SzUnknown -> // FIXME: need operand size determination logic @@ -326,13 +353,17 @@ type IntelParser(wordSz, reader) = setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | Imm sz -> - OperandParsers.parseOprImm span phlp (oprSizeToRegType sz) + //let szCond = getSizeCondForImmediate ic.Opcode + //let effAddrSz = ParsingHelper.GetEffAddrSize phlp + //let effOprSz = ParsingHelper.GetEffOprSize(phlp, szCond) + //setMemoryOperandContext phlp effAddrSz effOprSz effOprSz + OperandParsers.parseOprSImm span phlp (oprSizeToRegType sz) | Rel sz -> let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.F64) setMemoryOperandContext phlp effAddrSz effOprSz effOprSz OperandParsers.parseOprForRelJmp span phlp (oprSizeToRegType sz) - | FixedReg(reg, _) -> + | FixedReg reg -> let sz = Register.toRegType phlp.WordSize reg setMemoryOperandContextWithCurrentAddr phlp sz sz OprReg reg @@ -492,7 +523,6 @@ type IntelParser(wordSz, reader) = let mutable rex = REXPrefix.NOREX let mutable vex = None let prefEndPos = this.ParsePrefix span - let nextPos = this.ParseREX(span, prefEndPos, &rex) let rexEndPos = this.ParseREX(span, prefEndPos, &rex) let nextPos = this.ParseVEX(span, rexEndPos, &rex, &vex) phlp.VEXInfo <- None From d083ff4c2f8df33da028ed855b88a35a595b55d5 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 7 May 2026 14:30:06 +0900 Subject: [PATCH 15/26] [Intel] Add register operand encoding type --- src/FrontEnd/Intel/Intel.fs | 9431 ++++++++++++++++++++---------- src/FrontEnd/Intel/IntelTypes.fs | 10 +- src/FrontEnd/Intel/Parser.fs | 36 +- 3 files changed, 6310 insertions(+), 3167 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 8b2df62aa..0a0abb4b5 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -9,7 +9,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22,7 +22,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33,7 +33,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44,7 +44,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -57,7 +57,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -70,7 +70,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -81,7 +81,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -92,7 +92,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -179,7 +179,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -192,7 +192,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -203,7 +203,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -214,7 +214,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -227,7 +227,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -240,7 +240,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -251,7 +251,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -262,7 +262,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -338,7 +338,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -351,7 +351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -362,7 +362,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -373,7 +373,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -386,7 +386,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -399,7 +399,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -410,7 +410,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -421,7 +421,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -508,7 +508,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -521,7 +521,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -532,7 +532,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -543,7 +543,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -556,7 +556,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -569,7 +569,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -580,7 +580,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -591,7 +591,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -678,7 +678,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -691,7 +691,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -702,7 +702,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -713,7 +713,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -726,7 +726,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -739,7 +739,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -750,7 +750,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -761,7 +761,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -837,7 +837,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -850,7 +850,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -861,7 +861,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -872,7 +872,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -885,7 +885,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -898,7 +898,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -909,7 +909,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -920,7 +920,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -996,7 +996,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1009,7 +1009,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1020,7 +1020,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1031,7 +1031,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1044,7 +1044,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1057,7 +1057,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1068,7 +1068,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1079,7 +1079,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1155,7 +1155,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1168,7 +1168,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1179,7 +1179,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1190,7 +1190,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1203,7 +1203,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1216,7 +1216,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1227,7 +1227,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1238,7 +1238,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1314,7 +1314,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1325,7 +1325,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1338,7 +1338,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1349,7 +1349,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1362,7 +1362,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1373,7 +1373,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1386,7 +1386,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1397,7 +1397,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1410,7 +1410,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1421,7 +1421,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1434,7 +1434,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1445,7 +1445,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1458,7 +1458,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1469,7 +1469,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1482,7 +1482,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1493,7 +1493,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1506,7 +1506,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1517,7 +1517,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1530,7 +1530,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1541,7 +1541,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1554,7 +1554,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1565,7 +1565,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1578,7 +1578,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1589,7 +1589,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1602,7 +1602,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1613,7 +1613,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1626,7 +1626,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1637,7 +1637,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1650,7 +1650,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1661,7 +1661,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1674,7 +1674,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1685,7 +1685,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1698,7 +1698,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1709,7 +1709,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1720,7 +1720,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1733,7 +1733,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1744,7 +1744,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1755,7 +1755,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1768,7 +1768,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1779,7 +1779,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1790,7 +1790,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1803,7 +1803,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1814,7 +1814,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1825,7 +1825,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1838,7 +1838,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1849,7 +1849,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1860,7 +1860,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1873,7 +1873,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1884,7 +1884,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1895,7 +1895,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1908,7 +1908,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1919,7 +1919,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1930,7 +1930,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1943,7 +1943,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1954,7 +1954,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1965,7 +1965,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1978,7 +1978,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1989,7 +1989,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2000,7 +2000,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2013,7 +2013,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2024,7 +2024,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2035,7 +2035,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2048,7 +2048,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2059,7 +2059,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2070,7 +2070,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2083,7 +2083,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2094,7 +2094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2105,7 +2105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2118,7 +2118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2129,7 +2129,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2140,7 +2140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2153,7 +2153,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2164,7 +2164,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2175,7 +2175,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2188,7 +2188,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2199,7 +2199,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2210,7 +2210,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2223,7 +2223,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2234,7 +2234,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2245,7 +2245,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2306,7 +2306,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2317,7 +2317,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2330,7 +2330,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2341,7 +2341,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2352,7 +2352,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2363,7 +2363,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz32 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2408,7 +2408,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16; Imm Sz16 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2419,7 +2419,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2430,7 +2430,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Imm Sz32 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2456,7 +2456,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16; Imm Sz8 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2467,7 +2467,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2478,7 +2478,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3617,7 +3617,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3630,7 +3630,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3641,7 +3641,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3652,7 +3652,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3665,7 +3665,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3676,7 +3676,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3689,7 +3689,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3700,7 +3700,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3711,7 +3711,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3722,7 +3722,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3733,7 +3733,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3744,7 +3744,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3757,7 +3757,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3770,7 +3770,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3781,7 +3781,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3792,7 +3792,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3805,7 +3805,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz8; RM Sz8 |] + Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3818,7 +3818,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3829,7 +3829,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3840,7 +3840,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3888,7 +3888,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem SzUnknown |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3899,7 +3899,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem SzUnknown |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3910,7 +3910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem SzUnknown |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4004,7 +4004,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4015,7 +4015,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4026,7 +4026,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4037,7 +4037,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4048,7 +4048,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4059,7 +4059,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4072,7 +4072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4083,7 +4083,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4094,7 +4094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4105,7 +4105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4116,7 +4116,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4127,7 +4127,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4140,7 +4140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4151,7 +4151,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4162,7 +4162,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4173,7 +4173,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4184,7 +4184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4195,7 +4195,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4208,7 +4208,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4219,7 +4219,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4230,7 +4230,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4241,7 +4241,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4252,7 +4252,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4263,7 +4263,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4276,7 +4276,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4287,7 +4287,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4298,7 +4298,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4309,7 +4309,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4320,7 +4320,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4331,7 +4331,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4344,7 +4344,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4355,7 +4355,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4366,7 +4366,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4377,7 +4377,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4388,7 +4388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4399,7 +4399,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4412,7 +4412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4423,7 +4423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4434,7 +4434,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4445,7 +4445,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4456,7 +4456,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4467,7 +4467,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4480,7 +4480,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg Sz16 |] + Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4491,7 +4491,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; FixedReg(Register.AX) |] + Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4502,7 +4502,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg Sz32 |] + Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4513,7 +4513,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg Sz64 |] + Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4524,7 +4524,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; FixedReg(Register.EAX) |] + Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4535,7 +4535,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; FixedReg(Register.RAX) |] + Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5344,7 +5344,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5357,7 +5357,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5370,7 +5370,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5383,7 +5383,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5396,7 +5396,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5409,7 +5409,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5422,7 +5422,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5435,7 +5435,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz8; Imm Sz8 |] + Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5448,7 +5448,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5459,7 +5459,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5470,7 +5470,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5483,7 +5483,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5494,7 +5494,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5505,7 +5505,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5518,7 +5518,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5529,7 +5529,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5540,7 +5540,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5553,7 +5553,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5564,7 +5564,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5575,7 +5575,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5588,7 +5588,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5599,7 +5599,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5610,7 +5610,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5623,7 +5623,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5634,7 +5634,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5645,7 +5645,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5658,7 +5658,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5669,7 +5669,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5680,7 +5680,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5693,7 +5693,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz16; Imm Sz16 |] + Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5704,7 +5704,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Imm Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5715,7 +5715,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64; Imm Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6110,7 +6110,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz32 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6121,7 +6121,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz48 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6134,7 +6134,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz32 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6145,7 +6145,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz48 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -10319,7 +10319,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10330,7 +10330,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10341,7 +10341,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz64, Sz16) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz64, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10354,7 +10354,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10365,7 +10365,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz32, Sz16) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10376,7 +10376,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz32, Sz16) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10523,7 +10523,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10534,7 +10534,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10545,7 +10545,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10556,7 +10556,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10567,7 +10567,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10578,7 +10578,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10591,7 +10591,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10602,7 +10602,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10613,7 +10613,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10624,7 +10624,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10637,7 +10637,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10648,7 +10648,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10659,7 +10660,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10670,7 +10671,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10681,7 +10682,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10694,7 +10695,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10705,7 +10706,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10718,7 +10719,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10729,7 +10730,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10742,7 +10743,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10753,7 +10754,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10766,7 +10767,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10777,7 +10778,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10788,7 +10789,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10799,7 +10801,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10812,7 +10814,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10823,7 +10825,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11101,7 +11103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11112,7 +11114,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11149,7 +11151,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; CtrlReg |] + Operands = [| Reg(Sz32, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11160,7 +11162,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; CtrlReg |] + Operands = [| Reg(Sz64, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11171,7 +11173,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz64; CtrlReg |] + Operands = [| Reg(Sz64, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11184,7 +11186,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; DebugReg |] + Operands = [| Reg(Sz32, OprRegType.RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11195,7 +11197,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; DebugReg |] + Operands = [| Reg(Sz64, OprRegType.RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11208,7 +11210,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg Sz32 |] + Operands = [| CtrlReg; Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11219,7 +11221,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg Sz64 |] + Operands = [| CtrlReg; Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11230,7 +11232,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| CtrlReg; Reg Sz64 |] + Operands = [| CtrlReg; Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11243,7 +11245,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg Sz32 |] + Operands = [| DebugReg; Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11254,7 +11256,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg Sz64 |] + Operands = [| DebugReg; Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11275,7 +11277,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11286,7 +11288,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11299,7 +11301,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11310,7 +11312,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11323,7 +11325,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11334,7 +11336,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11345,7 +11347,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11356,7 +11358,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11367,7 +11369,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11378,7 +11380,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11391,7 +11393,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11402,7 +11404,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11437,7 +11439,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11448,7 +11450,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11459,7 +11461,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11470,7 +11472,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11505,7 +11507,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11516,7 +11518,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11527,7 +11529,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11538,7 +11540,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11551,7 +11553,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11562,7 +11564,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11575,7 +11577,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11586,7 +11588,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11796,7 +11798,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11807,7 +11809,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11818,7 +11820,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11831,7 +11833,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11842,7 +11844,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11853,7 +11855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11866,7 +11868,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11877,7 +11879,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11888,7 +11890,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11899,7 +11901,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11910,7 +11912,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11921,7 +11923,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11932,7 +11934,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11943,7 +11945,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11954,7 +11956,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11967,7 +11969,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11978,7 +11980,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11989,7 +11991,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12000,7 +12002,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12011,7 +12013,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12022,7 +12024,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12033,7 +12035,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12044,7 +12046,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12055,7 +12057,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12068,7 +12070,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12079,7 +12081,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12090,7 +12092,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12101,7 +12103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12112,7 +12114,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12123,7 +12125,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12136,7 +12138,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12147,7 +12149,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12158,7 +12160,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12169,7 +12171,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12180,7 +12182,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12191,7 +12193,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12204,7 +12206,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12215,7 +12217,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12226,7 +12228,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12237,7 +12239,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12248,7 +12250,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12259,7 +12261,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12272,7 +12274,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12283,7 +12285,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12294,7 +12296,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12305,7 +12307,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12316,7 +12318,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12327,7 +12329,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12340,7 +12342,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12351,7 +12353,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12362,7 +12364,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12375,7 +12377,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12386,7 +12388,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12397,7 +12399,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12410,7 +12412,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12421,7 +12423,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12432,7 +12434,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12443,7 +12445,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12454,7 +12456,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12465,7 +12467,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12478,7 +12480,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12489,7 +12491,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12500,7 +12502,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12511,7 +12513,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12522,7 +12524,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12533,7 +12535,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12546,7 +12548,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12557,7 +12559,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12568,7 +12570,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12579,7 +12581,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12590,7 +12592,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12601,7 +12603,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12614,7 +12616,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12625,7 +12627,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12636,7 +12638,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12647,7 +12649,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12658,7 +12660,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12669,7 +12671,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12682,7 +12684,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12693,7 +12695,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12704,7 +12706,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12715,7 +12717,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12726,7 +12728,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12737,7 +12739,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12750,7 +12752,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12761,7 +12763,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12772,7 +12774,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NA @@ -12783,7 +12785,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12794,7 +12796,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12805,7 +12807,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12818,7 +12820,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12829,7 +12832,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12842,7 +12846,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12853,7 +12857,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12864,7 +12868,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12875,7 +12879,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12888,7 +12892,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12899,7 +12903,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12912,7 +12916,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12923,7 +12927,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12936,7 +12940,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12947,7 +12951,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12960,7 +12964,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12971,7 +12975,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12984,7 +12988,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12995,7 +12999,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13008,7 +13012,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13019,7 +13023,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13032,7 +13036,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13043,7 +13047,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13054,7 +13058,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13065,7 +13069,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13078,7 +13082,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13089,7 +13093,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13100,7 +13104,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13111,7 +13115,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13124,7 +13128,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13135,7 +13139,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13146,7 +13150,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13157,7 +13161,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13170,7 +13174,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13181,7 +13185,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13192,7 +13196,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13205,7 +13209,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13216,7 +13220,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13227,7 +13231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13238,7 +13242,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13251,7 +13255,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13262,7 +13266,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13273,7 +13277,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13284,7 +13288,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13297,7 +13301,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13308,7 +13312,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13319,7 +13323,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13330,7 +13334,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13343,7 +13347,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13354,7 +13358,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13365,7 +13369,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13376,7 +13380,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13400,7 +13404,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13424,7 +13428,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13448,7 +13452,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13472,7 +13476,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13496,7 +13500,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13520,7 +13524,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13544,7 +13548,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13568,7 +13572,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13592,7 +13596,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13616,7 +13620,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13640,7 +13644,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13664,7 +13668,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13677,7 +13681,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13690,7 +13694,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13725,7 +13729,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13736,7 +13740,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13749,7 +13753,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13760,7 +13764,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13784,7 +13788,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13795,7 +13799,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13806,7 +13810,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13841,7 +13845,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13863,7 +13867,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13885,7 +13889,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13909,7 +13913,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13931,7 +13935,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13953,7 +13957,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13966,7 +13970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13988,7 +13992,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13999,7 +14003,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14021,7 +14025,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14045,7 +14049,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14069,7 +14073,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14093,7 +14097,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14127,7 +14131,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14138,7 +14142,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14151,7 +14155,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14162,7 +14166,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14197,7 +14201,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14208,7 +14212,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -14219,7 +14223,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14232,7 +14236,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14243,7 +14247,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15404,7 +15408,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15415,7 +15419,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15426,7 +15430,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15439,7 +15443,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15450,7 +15454,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15461,7 +15465,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15474,7 +15478,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL) |] + Operands = [| RM Sz16 + Reg(Sz16, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15485,7 +15491,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL) |] + Operands = [| RM Sz32 + Reg(Sz32, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15496,7 +15504,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL) |] + Operands = [| RM Sz64 + Reg(Sz64, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15574,7 +15584,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15585,7 +15595,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15596,7 +15606,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15609,7 +15619,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; Imm Sz8 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15620,7 +15630,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15631,7 +15641,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; Imm Sz8 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15644,7 +15654,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16; FixedReg(Register.CL) |] + Operands = [| RM Sz16 + Reg(Sz16, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15655,7 +15667,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32; FixedReg(Register.CL) |] + Operands = [| RM Sz32 + Reg(Sz32, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15666,7 +15680,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64; FixedReg(Register.CL) |] + Operands = [| RM Sz64 + Reg(Sz64, OprRegType.RegBit) + FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15767,7 +15783,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15778,7 +15794,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -15844,7 +15860,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15855,7 +15871,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15866,7 +15882,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15877,7 +15893,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15910,7 +15926,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15932,7 +15948,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15943,7 +15959,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15954,7 +15970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15965,7 +15981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15976,7 +15992,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -16055,7 +16071,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16066,7 +16082,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16077,7 +16093,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16090,7 +16106,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16103,7 +16119,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16114,7 +16130,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16125,7 +16141,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16138,7 +16154,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz32 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16149,7 +16165,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz48 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16160,7 +16176,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem Sz80 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16173,7 +16189,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16184,7 +16200,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16195,7 +16211,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16208,7 +16224,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz32 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16219,7 +16235,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz48 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16230,7 +16246,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem Sz80 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16243,7 +16259,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz32 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16254,7 +16270,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz48 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16265,7 +16281,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem Sz80 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16278,7 +16294,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz8 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16289,7 +16305,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16300,7 +16316,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz8 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16313,7 +16329,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz16 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16324,7 +16340,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz16 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16337,7 +16353,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16348,7 +16364,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16359,7 +16375,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16372,7 +16388,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16519,7 +16535,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16530,7 +16546,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16541,7 +16557,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16554,7 +16570,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16565,7 +16581,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16576,7 +16592,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16587,7 +16603,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16598,7 +16614,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16609,7 +16625,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16622,7 +16638,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16633,7 +16649,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16644,7 +16660,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16655,7 +16671,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16666,7 +16682,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16677,7 +16693,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16690,7 +16706,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; RM Sz8 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16701,7 +16717,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16712,7 +16728,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz8 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16725,7 +16741,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz16 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16736,7 +16752,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz16 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16749,7 +16765,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg Sz8 |] + Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16762,7 +16778,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg Sz16 |] + Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16773,7 +16789,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz32 |] + Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16784,7 +16800,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz64 |] + Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16797,7 +16813,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16808,7 +16824,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16819,7 +16835,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16830,7 +16848,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16843,7 +16863,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg Sz32 |] + Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16854,7 +16874,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz64 |] + Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16878,7 +16898,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz32, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16891,7 +16913,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; MMXReg; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); MMXReg; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16902,7 +16924,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16915,7 +16939,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16926,7 +16950,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16961,7 +16985,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -16972,7 +16996,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16983,7 +17007,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16994,7 +17018,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17005,7 +17029,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17016,7 +17040,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17027,7 +17051,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17038,7 +17062,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17049,7 +17073,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17128,7 +17152,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17139,7 +17163,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17152,7 +17176,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17163,7 +17187,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17176,7 +17200,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17187,7 +17211,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17200,7 +17224,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17211,7 +17235,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17224,7 +17248,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17235,7 +17259,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17248,7 +17272,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17259,7 +17283,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17272,7 +17296,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17283,7 +17307,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17296,7 +17320,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17307,7 +17331,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17320,7 +17344,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17331,7 +17355,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17355,7 +17379,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17379,7 +17403,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17403,7 +17427,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17427,7 +17451,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17451,7 +17475,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17464,7 +17488,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; Reg Sz128 |] + Operands = [| MMXReg; Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17475,7 +17499,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17486,7 +17510,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MMXReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17499,7 +17523,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; MMXReg |] + Operands = [| Reg(Sz32, OprRegType.RegBit); MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17510,7 +17534,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17534,7 +17559,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17558,7 +17583,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17582,7 +17607,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17606,7 +17631,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17630,7 +17655,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17654,7 +17679,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17678,7 +17703,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17702,7 +17727,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17726,7 +17751,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17750,7 +17775,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17774,7 +17799,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17798,7 +17823,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17822,7 +17847,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17846,7 +17871,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17859,7 +17884,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17870,7 +17895,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17881,7 +17906,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17894,7 +17919,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17929,7 +17954,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17953,7 +17978,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17977,7 +18002,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18001,7 +18026,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18025,7 +18050,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18049,7 +18074,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18073,7 +18098,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18097,7 +18122,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18110,7 +18135,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem SzUnknown |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18134,7 +18159,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18158,7 +18183,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18182,7 +18207,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18206,7 +18231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18230,7 +18255,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18254,7 +18279,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18267,7 +18292,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18302,7 +18328,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18326,7 +18352,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18350,7 +18376,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18374,7 +18400,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18398,7 +18424,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18422,7 +18448,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18446,7 +18472,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18459,7 +18485,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18487,7 +18513,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18511,7 +18537,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18535,7 +18561,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18559,7 +18585,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18583,7 +18609,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18607,7 +18633,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18631,7 +18657,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18655,7 +18681,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18679,7 +18705,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18703,7 +18729,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18727,7 +18753,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18751,7 +18777,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18772,7 +18798,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18791,7 +18817,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18804,7 +18830,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18819,7 +18845,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18851,7 +18877,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18875,7 +18901,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18899,7 +18925,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18914,7 +18940,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18927,7 +18953,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18940,7 +18966,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18953,7 +18979,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18966,7 +18992,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18979,7 +19005,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18996,7 +19022,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19009,7 +19035,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19022,7 +19048,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19035,7 +19061,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19056,7 +19082,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19069,7 +19095,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19082,7 +19108,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19095,7 +19121,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19108,7 +19134,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19121,7 +19147,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19136,7 +19162,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19149,7 +19175,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19162,7 +19188,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19175,7 +19201,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19188,7 +19214,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19201,7 +19227,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19214,7 +19240,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19227,7 +19253,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19240,7 +19266,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19253,7 +19279,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19266,7 +19292,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19407,7 +19433,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -19418,7 +19444,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem Sz128 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19569,7 +19595,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19582,7 +19608,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19595,7 +19621,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19608,7 +19634,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19621,7 +19647,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19634,7 +19660,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19649,7 +19675,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19728,7 +19754,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19741,7 +19767,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19752,7 +19778,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz384 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19763,7 +19789,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19776,7 +19803,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz384 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19787,7 +19814,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19800,7 +19827,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19811,7 +19838,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz512 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19824,7 +19851,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz512 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19835,7 +19862,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19880,7 +19907,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19891,7 +19918,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz8 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19902,7 +19929,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz16; Mem Sz16 |] + Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19913,7 +19940,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Mem Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19924,7 +19951,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Mem Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19937,7 +19964,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz16 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19948,7 +19975,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19959,7 +19986,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19970,7 +19997,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz16; Reg Sz16 |] + Operands = [| Mem Sz16; Reg(Sz16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19981,7 +20008,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg Sz32 |] + Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19992,7 +20019,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz64 |] + Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20011,7 +20038,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32 |] + Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20022,7 +20049,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64 |] + Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20035,7 +20062,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20046,7 +20073,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20057,7 +20084,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20068,7 +20095,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20079,7 +20106,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32 |] + Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20090,7 +20117,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64 |] + Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20140,7 +20167,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg Sz32 |] + Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20151,7 +20178,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz64 |] + Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20164,7 +20191,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20177,7 +20205,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20218,7 +20247,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20231,7 +20260,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20244,7 +20273,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20257,7 +20288,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20270,7 +20303,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20283,7 +20316,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20296,7 +20329,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20320,7 +20353,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20341,7 +20374,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz8) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20354,7 +20389,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz16) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20367,7 +20404,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20378,7 +20415,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20391,7 +20428,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20420,7 +20457,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz32, Sz8) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20433,7 +20472,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20446,7 +20487,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20457,7 +20498,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -20528,7 +20569,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20541,7 +20582,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20554,7 +20595,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20569,7 +20610,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20636,7 +20677,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20649,7 +20690,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20662,7 +20703,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20675,7 +20716,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20896,7 +20937,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20911,7 +20952,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20924,7 +20965,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20967,7 +21008,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21091,7 +21132,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21102,7 +21145,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21113,7 +21156,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21124,7 +21169,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21135,7 +21180,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21146,7 +21191,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21157,7 +21202,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21168,7 +21213,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21181,7 +21226,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21192,7 +21239,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21203,7 +21250,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21214,7 +21263,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg Sz128 |] + Operands = [| Mem Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21225,7 +21274,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21236,7 +21285,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21247,7 +21296,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21258,7 +21307,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21271,7 +21320,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21282,7 +21331,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21293,7 +21342,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21304,7 +21355,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.B Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21315,7 +21368,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21326,7 +21381,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21337,7 +21392,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21350,7 +21405,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21361,7 +21416,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21374,7 +21429,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21385,7 +21442,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21396,7 +21455,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21407,7 +21468,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21420,7 +21483,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21431,7 +21496,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21442,7 +21509,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21453,7 +21522,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21466,7 +21537,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21477,7 +21550,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21488,7 +21563,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21499,7 +21576,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21510,7 +21587,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21523,7 +21600,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21534,7 +21611,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21579,7 +21656,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21590,7 +21667,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21601,7 +21678,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21612,7 +21689,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21625,7 +21702,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21636,7 +21713,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21647,7 +21724,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21658,7 +21735,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21671,7 +21748,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21682,7 +21761,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21693,7 +21774,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21704,7 +21787,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21717,7 +21802,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21728,7 +21813,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21739,7 +21824,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21750,7 +21835,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21763,7 +21848,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21774,7 +21859,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21785,7 +21870,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21796,7 +21881,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21809,7 +21894,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21820,7 +21905,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21831,7 +21916,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21842,7 +21927,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21855,7 +21940,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21866,7 +21951,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21879,7 +21964,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21890,7 +21975,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22308,7 +22393,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22319,7 +22405,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz256 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22330,7 +22417,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22341,7 +22429,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz256 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22354,7 +22443,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22365,7 +22454,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22376,7 +22465,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22387,7 +22476,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22398,7 +22487,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22409,7 +22500,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22422,7 +22515,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22433,7 +22526,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22444,7 +22537,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22457,7 +22552,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22468,7 +22563,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22479,7 +22574,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22492,7 +22589,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22503,7 +22602,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22514,7 +22615,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22525,7 +22628,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22538,7 +22643,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22549,7 +22656,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22560,7 +22669,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22571,7 +22682,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22584,7 +22697,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22595,7 +22710,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22606,7 +22723,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22617,7 +22736,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22630,7 +22751,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22641,7 +22764,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22652,7 +22777,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22663,7 +22790,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22676,7 +22805,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22687,7 +22818,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22698,7 +22831,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22709,7 +22844,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22720,7 +22857,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22731,7 +22870,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22744,7 +22885,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22755,7 +22898,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22766,7 +22911,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22777,7 +22924,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22788,7 +22937,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22799,7 +22950,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22812,7 +22965,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22823,7 +22976,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22834,7 +22987,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22845,7 +22998,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22856,7 +23009,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22867,7 +23022,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22880,7 +23037,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22891,7 +23048,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22902,7 +23059,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22913,7 +23070,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22924,7 +23081,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22935,7 +23092,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22948,7 +23105,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22959,7 +23118,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22970,7 +23131,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22981,7 +23144,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22992,7 +23157,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23003,7 +23170,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23016,7 +23185,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23027,7 +23198,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23038,7 +23211,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23049,7 +23224,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23060,7 +23237,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23071,7 +23250,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23084,7 +23265,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23095,7 +23278,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23106,7 +23291,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23117,7 +23304,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23128,7 +23317,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23139,7 +23330,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23152,7 +23345,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23163,7 +23358,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23174,7 +23371,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23185,7 +23384,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23196,7 +23397,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23207,7 +23410,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23220,7 +23425,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23231,7 +23438,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23244,7 +23453,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23255,7 +23466,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23268,7 +23481,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23279,7 +23494,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23292,7 +23509,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23303,7 +23522,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23316,7 +23537,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23327,7 +23550,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23340,7 +23565,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23351,7 +23578,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23364,7 +23593,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23375,7 +23606,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23388,7 +23621,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23399,7 +23634,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23412,7 +23649,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23423,7 +23662,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23436,7 +23677,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23447,7 +23690,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23460,7 +23705,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23471,7 +23718,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23484,7 +23733,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23495,7 +23746,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23508,7 +23761,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23519,7 +23774,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23532,7 +23789,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23543,7 +23802,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23556,7 +23817,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23567,7 +23828,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -23580,7 +23841,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23591,7 +23852,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23602,7 +23863,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23613,7 +23874,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23626,7 +23887,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23637,7 +23898,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23648,7 +23909,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23659,7 +23920,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23670,7 +23931,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23681,7 +23942,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23694,7 +23955,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23705,7 +23968,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23716,7 +23981,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23727,7 +23994,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23738,7 +24007,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23749,7 +24020,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23762,7 +24035,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23773,7 +24048,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23784,7 +24061,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23795,7 +24074,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23806,7 +24087,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23817,7 +24100,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23830,7 +24115,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23841,7 +24128,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23852,7 +24141,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23863,7 +24154,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23874,7 +24167,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23885,7 +24180,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23896,7 +24193,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23907,7 +24206,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23920,7 +24221,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23931,7 +24234,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23944,7 +24249,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23955,7 +24262,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23968,7 +24277,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23979,7 +24290,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24024,7 +24337,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24035,7 +24350,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24046,7 +24363,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24057,7 +24376,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24070,7 +24391,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24081,7 +24404,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24092,7 +24417,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24103,7 +24430,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24116,7 +24445,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24127,7 +24456,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -24138,7 +24467,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24151,7 +24480,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24162,7 +24491,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24173,7 +24502,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24184,7 +24513,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24321,7 +24650,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz32 |] + Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24332,7 +24661,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz32 |] + Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24343,7 +24672,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz64 |] + Operands = [| OpMaskReg; Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24354,7 +24683,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz32 |] + Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24367,7 +24696,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; OpMaskReg |] + Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24378,7 +24707,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; OpMaskReg |] + Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24389,7 +24718,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; OpMaskReg |] + Operands = [| Reg(Sz64, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24400,7 +24729,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; OpMaskReg |] + Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24615,7 +24944,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24626,7 +24958,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24637,7 +24972,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24648,7 +24986,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24659,7 +25000,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24670,7 +25014,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24685,7 +25032,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz32, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24698,7 +25048,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24711,7 +25063,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24722,7 +25077,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24733,7 +25091,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24744,7 +25105,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24775,7 +25139,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24786,7 +25152,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24797,7 +25165,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24808,7 +25178,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24821,7 +25193,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24832,7 +25206,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24845,7 +25221,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24856,7 +25234,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24869,7 +25249,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24880,7 +25262,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24893,7 +25277,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24904,7 +25290,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24917,7 +25305,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24928,7 +25318,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24941,7 +25333,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24954,7 +25346,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24965,7 +25358,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz256 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24978,7 +25372,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24989,7 +25385,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25002,7 +25400,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25013,7 +25413,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25026,7 +25428,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25037,7 +25441,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25050,7 +25456,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25061,7 +25469,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25074,7 +25484,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25085,7 +25497,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25098,7 +25512,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25109,7 +25525,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25122,7 +25540,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25133,7 +25553,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25146,7 +25568,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25157,7 +25581,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25170,7 +25596,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25181,7 +25609,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25194,7 +25624,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25205,7 +25637,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25218,7 +25652,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25229,7 +25665,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25242,7 +25680,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25253,7 +25693,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25266,7 +25708,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25277,7 +25721,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25290,7 +25736,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25301,7 +25749,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25314,7 +25764,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25325,7 +25775,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25336,7 +25786,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25347,7 +25797,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25358,7 +25808,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25369,7 +25819,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25382,7 +25832,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25393,7 +25843,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25406,7 +25856,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25417,7 +25869,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25430,7 +25884,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25441,7 +25897,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25454,7 +25912,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25465,7 +25925,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25478,7 +25940,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25489,7 +25953,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25502,7 +25968,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25513,7 +25981,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25526,7 +25996,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25537,7 +26009,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25550,7 +26024,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25561,7 +26037,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25574,7 +26052,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25585,7 +26065,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25598,7 +26080,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25609,7 +26091,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25622,7 +26104,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25633,7 +26117,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25646,7 +26132,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25657,7 +26145,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25670,7 +26160,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25681,7 +26173,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25694,7 +26188,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25705,7 +26201,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25718,7 +26216,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25729,7 +26229,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25742,7 +26244,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25753,7 +26257,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25766,7 +26272,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25779,7 +26286,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25790,7 +26299,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25803,7 +26314,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25814,7 +26327,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25827,7 +26342,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25838,7 +26355,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25851,7 +26370,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25862,7 +26383,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25875,7 +26398,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25886,7 +26411,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25899,7 +26426,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25910,7 +26439,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25923,7 +26454,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25934,7 +26467,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25953,7 +26488,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25964,7 +26501,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25977,7 +26516,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25988,7 +26529,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26001,7 +26544,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26012,7 +26557,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26025,7 +26572,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26036,7 +26585,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26049,7 +26600,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26060,7 +26613,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26073,7 +26628,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26084,7 +26641,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26097,7 +26656,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26108,7 +26669,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26121,7 +26684,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26132,7 +26697,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26145,7 +26712,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26156,7 +26725,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26169,7 +26740,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26180,7 +26753,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26193,7 +26768,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26204,7 +26781,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26217,7 +26796,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26228,7 +26809,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26241,7 +26824,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26252,7 +26837,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26265,7 +26852,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26276,7 +26865,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26289,7 +26880,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26300,7 +26891,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26313,7 +26904,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26324,7 +26915,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26343,7 +26934,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26354,7 +26945,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26371,7 +26962,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26384,7 +26977,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26395,7 +26988,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26408,7 +27001,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26419,7 +27012,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26430,7 +27023,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26441,7 +27035,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26454,7 +27049,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26465,7 +27060,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26478,7 +27074,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26493,7 +27089,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26504,7 +27100,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26517,7 +27113,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26528,7 +27124,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26541,7 +27137,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26552,7 +27148,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26567,7 +27163,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26578,7 +27174,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26591,7 +27187,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26602,7 +27198,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26615,7 +27211,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26626,7 +27222,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26639,7 +27235,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26650,7 +27246,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26663,7 +27259,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26674,7 +27270,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26687,7 +27283,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26698,7 +27294,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26715,7 +27311,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26726,7 +27324,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26739,7 +27339,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26750,7 +27352,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26763,7 +27367,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26774,7 +27378,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26787,7 +27391,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26798,7 +27404,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26811,7 +27419,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26822,7 +27432,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26835,7 +27447,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26846,7 +27460,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26859,7 +27475,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Mem Sz128 + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26870,7 +27488,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] + Operands = [| Mem Sz256 + Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26883,7 +27503,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Mem Sz128 + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26894,7 +27516,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] + Operands = [| Mem Sz256 + Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26907,7 +27531,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26918,7 +27542,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26931,7 +27555,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26942,7 +27566,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26955,7 +27579,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26966,7 +27590,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26979,7 +27603,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26990,7 +27614,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27003,7 +27627,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27014,7 +27638,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27027,7 +27651,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27038,7 +27662,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27051,7 +27675,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27064,7 +27690,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27075,7 +27703,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27088,7 +27718,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27099,7 +27731,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27112,7 +27746,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27123,7 +27759,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27136,7 +27774,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27147,7 +27787,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27160,7 +27802,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27171,7 +27815,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27184,7 +27830,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27195,7 +27843,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27208,7 +27858,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27219,7 +27871,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27232,7 +27886,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27243,7 +27899,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27256,7 +27914,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27267,7 +27927,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27280,7 +27942,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27291,7 +27955,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27304,7 +27970,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27323,7 +27989,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27334,7 +28002,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27345,7 +28015,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27356,7 +28028,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27369,7 +28043,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27380,7 +28056,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27393,7 +28071,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27404,7 +28084,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27415,7 +28097,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27426,7 +28110,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27474,7 +28160,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27489,7 +28175,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Mem SzUnknown |] + Operands = [| Reg(Sz1024, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27500,7 +28186,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Mem SzUnknown |] + Operands = [| Reg(Sz1024, OprRegType.RegBit); Mem SzUnknown |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27511,7 +28197,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem SzUnknown; Reg Sz1024 |] + Operands = [| Mem SzUnknown; Reg(Sz1024, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27532,7 +28218,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27543,7 +28231,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27554,7 +28244,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27565,7 +28257,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27576,7 +28270,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27587,7 +28283,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27598,7 +28296,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27609,7 +28309,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27622,7 +28324,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27633,7 +28337,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27644,7 +28350,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27655,7 +28363,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27666,7 +28376,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27677,7 +28389,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27688,7 +28402,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27699,7 +28415,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27712,7 +28430,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27723,7 +28443,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27736,7 +28458,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27747,7 +28471,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27768,7 +28494,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27779,7 +28505,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27792,7 +28518,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27803,7 +28529,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27816,7 +28542,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27831,7 +28557,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27842,7 +28570,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27857,7 +28587,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27868,7 +28600,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27879,7 +28613,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27890,7 +28626,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz1024; Reg Sz1024; Reg Sz1024 |] + Operands = [| Reg(Sz1024, OprRegType.RegBit) + Reg(Sz1024, OprRegType.RMBit) + Reg(Sz1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -27941,7 +28679,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27952,7 +28690,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz256 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27975,7 +28713,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27986,7 +28724,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27999,7 +28737,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28010,7 +28748,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28059,7 +28797,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28070,7 +28810,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28081,7 +28823,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28092,7 +28836,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + Mem Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28107,7 +28853,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Mem Sz128 + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28118,7 +28866,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] + Operands = [| Mem Sz256 + Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28129,7 +28879,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Mem Sz128 + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28140,7 +28892,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256; Reg Sz256 |] + Operands = [| Mem Sz256 + Reg(Sz256, OprRegType.VVVV) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28155,7 +28909,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28166,7 +28922,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28177,7 +28935,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28188,7 +28948,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28201,7 +28963,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28212,7 +28976,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28223,7 +28989,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28234,7 +29002,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz64; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28247,7 +29017,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28258,7 +29030,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28269,7 +29043,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz32; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28280,7 +29056,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz32; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz32 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28293,7 +29071,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28304,7 +29084,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; MemVSIB Sz64; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28315,7 +29097,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28326,7 +29110,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; MemVSIB Sz64; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + MemVSIB Sz64 + Reg(Sz128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28343,7 +29129,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28354,7 +29142,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28365,7 +29155,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28376,7 +29168,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28389,7 +29183,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28400,7 +29196,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28411,7 +29209,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28422,7 +29222,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28435,7 +29237,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28446,7 +29250,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28457,7 +29263,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28468,7 +29276,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28481,7 +29291,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28492,7 +29304,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28505,7 +29319,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28516,7 +29332,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28527,7 +29345,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28538,7 +29358,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28551,7 +29373,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28562,7 +29386,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28575,7 +29401,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28586,7 +29414,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28597,7 +29427,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28608,7 +29440,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28621,7 +29455,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28632,7 +29468,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28645,7 +29483,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28656,7 +29496,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28667,7 +29509,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28678,7 +29522,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28691,7 +29537,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28702,7 +29550,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28727,7 +29577,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28738,7 +29590,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28749,7 +29603,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28760,7 +29616,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28773,7 +29631,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28784,7 +29644,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28795,7 +29657,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28806,7 +29670,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28819,7 +29685,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28830,7 +29698,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28841,7 +29711,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28852,7 +29724,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28865,7 +29739,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28876,7 +29752,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28889,7 +29767,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28900,7 +29780,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28911,7 +29793,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28922,7 +29806,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28935,7 +29821,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28946,7 +29834,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28959,7 +29849,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28970,7 +29862,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28981,7 +29875,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28992,7 +29888,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29005,7 +29903,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29016,7 +29916,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29029,7 +29931,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29040,7 +29944,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29051,7 +29957,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29062,7 +29970,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29075,7 +29985,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29086,7 +29998,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29099,7 +30013,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29110,7 +30024,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29121,7 +30035,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29132,7 +30046,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29143,7 +30057,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29154,7 +30068,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29165,7 +30079,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29176,7 +30090,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29189,7 +30103,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz16 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29200,7 +30114,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz16 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29211,7 +30125,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; Mem Sz16 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29222,7 +30136,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Mem Sz16 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29239,7 +30153,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29250,7 +30166,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29263,7 +30181,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29274,7 +30194,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29287,7 +30209,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29298,7 +30222,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29309,7 +30235,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29320,7 +30248,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29333,7 +30263,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29344,7 +30276,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29355,7 +30289,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29366,7 +30302,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29379,7 +30317,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29390,7 +30330,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29401,7 +30343,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29412,7 +30356,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29425,7 +30371,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29436,7 +30384,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29449,7 +30399,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29460,7 +30412,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29471,7 +30425,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29482,7 +30438,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29495,7 +30453,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29506,7 +30466,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29519,7 +30481,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29530,7 +30494,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29541,7 +30507,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29552,7 +30520,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29565,7 +30535,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29576,7 +30548,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29589,7 +30563,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29600,7 +30576,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29611,7 +30589,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29622,7 +30602,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29635,7 +30617,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29646,7 +30630,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29681,7 +30667,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Reg Sz256; Reg Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29694,7 +30682,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Reg Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29707,7 +30696,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29722,7 +30712,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29733,7 +30725,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29750,7 +30744,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29761,7 +30757,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29772,7 +30770,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29783,7 +30783,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29794,7 +30796,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29805,7 +30809,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29818,7 +30824,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29829,7 +30837,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29840,7 +30850,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29851,7 +30863,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29862,7 +30876,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29873,7 +30889,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29898,7 +30916,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29909,7 +30929,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29920,7 +30942,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29931,7 +30955,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29942,7 +30968,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29953,7 +30981,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29966,7 +30996,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29979,7 +31009,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29990,7 +31022,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30003,7 +31037,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30014,7 +31050,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30027,7 +31065,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30038,7 +31078,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30051,7 +31093,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30062,7 +31106,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30075,7 +31121,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30086,7 +31134,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30099,7 +31149,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30110,7 +31162,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30123,7 +31177,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30134,7 +31190,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30147,7 +31205,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30158,7 +31218,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30171,7 +31233,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30182,7 +31246,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30195,7 +31261,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30206,7 +31274,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30219,7 +31289,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30230,7 +31302,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30243,7 +31317,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30254,7 +31330,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30267,7 +31345,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30278,7 +31358,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30291,7 +31373,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30302,7 +31386,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30315,7 +31401,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30326,7 +31414,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30339,7 +31429,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30350,7 +31442,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30363,7 +31457,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30374,7 +31470,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30387,7 +31485,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30398,7 +31498,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30411,7 +31513,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30422,7 +31526,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30435,7 +31541,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg Sz32; Reg Sz32 |] + Operands = [| Mem Sz32 + Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30446,7 +31554,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg Sz64; Reg Sz64 |] + Operands = [| Mem Sz64 + Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30463,7 +31573,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30474,7 +31586,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30487,7 +31601,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30498,7 +31612,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30509,7 +31623,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30520,7 +31634,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30531,7 +31645,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30542,7 +31656,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30557,7 +31671,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + RM Sz32 + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30568,7 +31684,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + RM Sz64 + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30579,7 +31697,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30590,7 +31710,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30601,7 +31723,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30612,7 +31736,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30625,7 +31751,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz32; RM Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz32, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30636,7 +31764,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; Reg Sz64; RM Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + Reg(Sz64, OprRegType.VVVV) + RM Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30649,7 +31779,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + RM Sz32 + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30660,7 +31792,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + RM Sz64 + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30671,7 +31805,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + RM Sz32 + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30682,7 +31818,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + RM Sz32 + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30693,7 +31831,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Reg Sz32 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + RM Sz32 + Reg(Sz32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30704,7 +31844,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + RM Sz64 + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30715,7 +31857,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + RM Sz64 + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30726,7 +31870,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Reg Sz64 |] + Operands = [| Reg(Sz64, OprRegType.RegBit) + RM Sz64 + Reg(Sz64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30759,7 +31905,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30772,7 +31918,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30785,7 +31931,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30796,7 +31945,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30811,7 +31963,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30822,7 +31974,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30835,7 +31987,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30846,7 +31998,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30859,7 +32011,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30874,7 +32029,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30885,7 +32040,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30898,7 +32053,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30909,7 +32064,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30922,7 +32077,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30935,7 +32093,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30948,7 +32109,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30959,7 +32123,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30972,7 +32139,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30983,7 +32153,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30996,7 +32169,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31007,7 +32183,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31020,7 +32199,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31031,7 +32213,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31052,7 +32237,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz8) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31065,7 +32252,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz16) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31078,7 +32267,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31089,7 +32278,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -31102,7 +32291,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31115,7 +32304,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31128,7 +32320,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31147,7 +32339,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz128, Sz64) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31158,7 +32352,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31175,7 +32369,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz32, Sz8) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31188,7 +32385,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31201,7 +32401,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31212,7 +32415,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz64 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -31355,7 +32561,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31368,7 +32577,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31393,7 +32602,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31404,7 +32616,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31417,7 +32632,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31430,7 +32648,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31441,7 +32662,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31456,7 +32680,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31467,7 +32694,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31482,7 +32712,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31501,7 +32734,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Reg(Sz128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31512,7 +32748,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Reg(Sz256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31525,7 +32764,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Reg(Sz128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31536,7 +32778,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Reg(Sz256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31549,7 +32794,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Reg(Sz128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31560,7 +32808,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Reg(Sz256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31611,7 +32862,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31624,7 +32875,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31637,7 +32888,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31650,7 +32901,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31875,7 +33126,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31886,7 +33140,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31899,7 +33156,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31910,7 +33170,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31951,7 +33214,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31964,7 +33230,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32009,7 +33275,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RM Sz32; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32020,7 +33286,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RM Sz64; Imm Sz8 |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -32099,7 +33365,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32110,7 +33378,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32121,7 +33389,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32132,7 +33402,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32143,7 +33413,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32154,7 +33424,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32165,7 +33435,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32176,7 +33446,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32187,7 +33457,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32198,7 +33468,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32211,7 +33481,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32222,7 +33494,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32233,7 +33505,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32244,7 +33518,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg Sz128 |] + Operands = [| Mem Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32255,7 +33529,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32266,7 +33540,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32277,7 +33551,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32288,7 +33562,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32299,7 +33573,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32310,7 +33584,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32323,7 +33597,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32334,7 +33608,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32345,7 +33619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32356,7 +33630,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32367,7 +33643,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32378,7 +33656,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32389,7 +33669,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32400,7 +33680,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32411,7 +33691,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32424,7 +33704,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32435,7 +33715,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32448,7 +33728,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32459,7 +33741,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32470,7 +33754,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32481,7 +33767,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32492,7 +33780,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32503,7 +33793,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32516,7 +33808,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32527,7 +33821,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32538,7 +33834,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32549,7 +33847,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32560,7 +33860,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32571,7 +33873,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32584,7 +33888,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32595,7 +33901,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32606,7 +33914,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32617,7 +33927,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32628,7 +33938,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32639,7 +33949,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32652,7 +33962,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32663,7 +33973,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg Sz128 |] + Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32708,7 +34018,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32719,7 +34029,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32730,7 +34040,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32741,7 +34051,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32752,7 +34062,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32763,7 +34073,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32776,7 +34086,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32787,7 +34097,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32798,7 +34108,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32809,7 +34119,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32820,7 +34130,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32831,7 +34141,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32844,7 +34154,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32855,7 +34167,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -32866,7 +34180,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz32, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz32, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32877,7 +34193,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -32890,7 +34208,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32901,7 +34219,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32912,7 +34230,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg Sz512 |] + Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32923,7 +34241,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32934,7 +34252,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32945,7 +34263,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg Sz512 |] + Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32958,7 +34276,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32969,7 +34287,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -32980,7 +34298,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32991,7 +34309,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33004,7 +34322,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33015,7 +34333,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33026,7 +34344,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33037,7 +34355,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33050,7 +34368,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33061,7 +34379,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33074,7 +34392,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33085,7 +34403,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33164,7 +34482,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33175,7 +34494,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33186,7 +34506,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33197,7 +34518,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33208,7 +34530,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33219,7 +34542,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33230,7 +34554,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33241,7 +34567,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33258,7 +34586,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33269,7 +34599,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33280,7 +34612,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33291,7 +34625,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33302,7 +34638,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33313,7 +34651,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33326,7 +34666,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33337,7 +34679,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33348,7 +34692,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33359,7 +34705,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33370,7 +34718,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33381,7 +34731,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33394,7 +34746,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33405,7 +34759,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33416,7 +34772,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33427,7 +34785,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33438,7 +34798,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33449,7 +34811,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33462,7 +34826,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33473,7 +34839,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33484,7 +34852,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33495,7 +34865,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33506,7 +34878,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33517,7 +34891,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33530,7 +34906,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33541,7 +34919,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33552,7 +34932,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33563,7 +34945,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33574,7 +34958,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33585,7 +34971,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33596,7 +34984,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33607,7 +34997,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33620,7 +35012,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33631,7 +35025,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33642,7 +35038,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33653,7 +35051,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33664,7 +35064,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33675,7 +35077,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33686,7 +35090,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33697,7 +35103,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33710,7 +35118,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33721,7 +35130,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33732,7 +35142,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33743,7 +35154,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33754,7 +35166,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33765,7 +35178,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33776,7 +35190,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33787,7 +35203,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33800,7 +35218,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33811,7 +35230,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33822,7 +35242,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33833,7 +35254,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33844,7 +35266,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33855,7 +35278,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33866,7 +35290,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33877,7 +35302,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33888,7 +35314,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33899,7 +35326,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33910,7 +35338,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33921,7 +35350,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33934,7 +35364,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33945,7 +35377,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33956,7 +35390,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33967,7 +35403,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33978,7 +35416,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33989,7 +35429,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34000,7 +35442,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34011,7 +35455,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34024,7 +35470,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34035,7 +35483,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34046,7 +35496,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34057,7 +35509,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34068,7 +35522,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34079,7 +35535,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34090,7 +35548,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34101,7 +35561,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34114,7 +35576,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34125,7 +35589,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34136,7 +35602,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34147,7 +35615,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34158,7 +35628,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34169,7 +35641,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34180,7 +35654,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34191,7 +35667,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34204,7 +35682,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34215,7 +35695,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34226,7 +35708,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34237,7 +35721,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34248,7 +35734,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34259,7 +35747,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34270,7 +35760,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34281,7 +35773,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34294,7 +35788,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34305,7 +35801,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34316,7 +35814,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34329,7 +35829,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34340,7 +35842,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34351,7 +35855,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34364,7 +35870,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34375,7 +35883,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34386,7 +35896,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34399,7 +35911,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34410,7 +35924,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34421,7 +35937,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34434,7 +35952,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34445,7 +35963,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34456,7 +35974,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34469,7 +35987,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34480,7 +35998,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34491,7 +36009,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34504,7 +36022,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34515,7 +36035,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34526,7 +36048,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34539,7 +36063,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34550,7 +36076,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34561,7 +36089,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34574,7 +36104,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34585,7 +36117,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34596,7 +36130,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34609,7 +36145,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34620,7 +36158,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34631,7 +36171,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34644,7 +36186,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34655,7 +36199,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34666,7 +36212,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34679,7 +36227,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34690,7 +36240,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34701,7 +36253,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34714,7 +36268,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34725,7 +36281,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34736,7 +36294,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34749,7 +36309,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34760,7 +36322,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34771,7 +36335,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34784,7 +36350,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34795,7 +36361,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34808,7 +36374,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34819,7 +36385,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34830,7 +36396,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34841,7 +36407,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34852,7 +36418,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34863,7 +36429,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34874,7 +36440,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34885,7 +36451,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34896,7 +36462,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34907,7 +36473,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34918,7 +36484,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34929,7 +36495,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34940,7 +36506,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34951,7 +36517,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34962,7 +36528,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34973,7 +36539,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34984,7 +36550,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34995,7 +36561,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35008,7 +36574,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35019,7 +36587,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35030,7 +36600,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35041,7 +36613,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35052,7 +36624,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35063,7 +36635,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35074,7 +36646,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35085,7 +36657,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35096,7 +36668,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512; Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35109,7 +36681,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35120,7 +36692,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35131,7 +36703,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35142,7 +36714,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35153,7 +36725,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35164,7 +36736,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35175,7 +36747,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35186,7 +36758,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35197,7 +36769,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35210,7 +36782,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35221,7 +36795,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35232,7 +36808,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35243,7 +36821,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35254,7 +36834,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35265,7 +36847,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35276,7 +36860,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35287,7 +36873,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35298,7 +36886,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35309,7 +36899,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35320,7 +36912,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35331,7 +36925,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35342,7 +36938,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35353,7 +36951,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35364,7 +36964,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35375,7 +36977,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35386,7 +36990,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35397,7 +37003,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35408,7 +37016,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35419,7 +37029,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35430,7 +37042,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35441,7 +37055,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35452,7 +37068,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35463,7 +37081,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35476,7 +37096,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35487,7 +37107,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35498,7 +37118,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35509,7 +37129,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35520,7 +37142,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35531,7 +37155,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35542,7 +37168,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35553,7 +37179,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35564,7 +37190,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35575,7 +37201,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35586,7 +37214,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35597,7 +37227,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35610,7 +37242,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35621,7 +37253,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35632,7 +37264,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35645,7 +37277,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35656,7 +37288,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35667,7 +37299,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35680,7 +37312,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35691,7 +37325,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35702,7 +37338,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35717,7 +37355,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35728,7 +37367,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35739,7 +37379,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35750,7 +37391,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35761,7 +37403,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35772,7 +37415,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35783,7 +37427,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35794,7 +37439,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35805,7 +37451,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35816,7 +37463,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35827,7 +37475,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35838,7 +37487,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35849,7 +37499,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35860,7 +37510,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -35871,7 +37521,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35882,7 +37532,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -35895,7 +37545,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35906,7 +37557,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35917,7 +37569,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35928,7 +37581,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35939,7 +37593,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35950,7 +37605,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35961,7 +37617,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35972,7 +37629,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35983,7 +37641,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35994,7 +37653,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36005,7 +37665,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36016,7 +37677,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36027,7 +37689,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36038,7 +37700,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36049,7 +37711,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36060,7 +37722,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz64; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36073,7 +37735,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36084,7 +37747,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36095,7 +37759,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36106,7 +37771,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36117,7 +37783,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36128,7 +37795,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36139,7 +37807,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36150,7 +37819,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36161,7 +37831,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36172,7 +37843,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36183,7 +37855,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36194,7 +37867,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36205,7 +37879,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36216,7 +37891,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36227,7 +37903,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36238,7 +37915,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36249,7 +37927,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36260,7 +37939,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36273,7 +37953,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36284,7 +37965,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36295,7 +37977,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36306,7 +37989,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36317,7 +38001,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36328,7 +38013,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36339,7 +38025,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36350,7 +38038,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36361,7 +38051,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz32, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz32, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36372,7 +38064,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz64, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz64, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36389,7 +38083,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36400,7 +38094,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -36411,7 +38105,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36424,7 +38118,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36435,7 +38129,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36446,7 +38140,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36457,7 +38151,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36468,7 +38162,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36479,7 +38173,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36490,7 +38184,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36501,7 +38195,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36512,7 +38206,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36523,7 +38217,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36534,7 +38228,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36545,7 +38239,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36556,7 +38250,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36567,7 +38261,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36578,7 +38272,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36589,7 +38283,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36600,7 +38294,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36611,7 +38305,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36757,7 +38451,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36771,7 +38465,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36785,7 +38479,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36799,7 +38493,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36813,7 +38507,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36827,7 +38521,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36840,7 +38534,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36851,7 +38548,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36866,7 +38566,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz32, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36879,7 +38582,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| Reg(Sz32, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36892,8 +38597,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36906,8 +38611,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36920,8 +38625,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36934,8 +38639,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36948,8 +38653,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36962,8 +38667,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -36998,7 +38703,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37009,7 +38716,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37020,7 +38729,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37033,7 +38744,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37044,7 +38757,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37055,7 +38770,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37068,7 +38785,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37079,7 +38798,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37090,7 +38811,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37103,7 +38826,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37114,7 +38839,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37125,7 +38852,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37138,7 +38867,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37149,7 +38880,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37160,7 +38893,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37173,7 +38908,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37188,7 +38923,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37199,7 +38936,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37210,7 +38949,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37223,7 +38964,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37234,7 +38977,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37245,7 +38990,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37258,7 +39005,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37269,7 +39018,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37280,7 +39031,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37293,7 +39046,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37304,7 +39059,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37315,7 +39072,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37326,7 +39085,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37337,7 +39098,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37348,7 +39111,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37361,7 +39126,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37372,7 +39139,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37383,7 +39152,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37396,7 +39167,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37407,7 +39180,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37418,7 +39193,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37431,7 +39208,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37442,7 +39221,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37453,7 +39234,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37466,7 +39249,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37477,7 +39262,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37488,7 +39275,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37499,7 +39288,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37510,7 +39301,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37521,7 +39314,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37534,7 +39329,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37545,7 +39342,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37556,7 +39355,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37569,7 +39370,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37580,7 +39383,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37591,7 +39396,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37604,7 +39411,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37615,7 +39424,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37626,7 +39437,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37637,7 +39450,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37648,7 +39463,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37659,7 +39476,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37672,7 +39491,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37683,7 +39504,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37694,7 +39517,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37707,7 +39532,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37718,7 +39545,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37729,7 +39558,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37742,7 +39573,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37753,7 +39586,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37764,7 +39599,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37777,7 +39614,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz64, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37788,7 +39626,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37799,7 +39638,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37810,7 +39650,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37821,7 +39662,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37832,7 +39674,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37843,7 +39686,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37854,7 +39698,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37865,7 +39710,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37876,7 +39722,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37887,7 +39734,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37898,7 +39746,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37911,7 +39760,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37922,7 +39771,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37933,7 +39782,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg Sz512 |] + Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37946,7 +39795,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37957,7 +39808,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37968,7 +39821,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37981,7 +39836,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37992,7 +39849,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38003,7 +39862,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38016,7 +39877,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38027,7 +39890,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38038,7 +39903,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38051,7 +39918,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38062,7 +39931,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38073,7 +39944,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38084,7 +39957,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38095,7 +39970,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38106,7 +39983,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38119,7 +39998,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38130,7 +40011,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38141,7 +40024,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38154,7 +40039,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38165,7 +40052,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38176,7 +40065,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38189,7 +40080,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38200,7 +40093,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38211,7 +40106,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38224,7 +40121,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38235,7 +40134,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38246,7 +40147,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38257,7 +40160,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38268,7 +40173,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38279,7 +40186,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38294,7 +40203,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38305,7 +40216,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38316,7 +40229,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38329,7 +40244,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38340,7 +40257,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38351,7 +40270,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38364,7 +40285,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38375,7 +40298,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38386,7 +40311,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38399,7 +40326,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38410,7 +40339,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38421,7 +40352,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38434,7 +40367,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38445,7 +40380,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38456,7 +40393,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38469,7 +40408,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38480,7 +40421,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38491,7 +40434,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38506,7 +40451,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38517,7 +40464,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38528,7 +40477,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38541,7 +40492,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38552,7 +40505,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38563,7 +40518,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38576,7 +40533,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38587,7 +40546,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38598,7 +40559,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38611,7 +40574,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38622,7 +40587,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38633,7 +40600,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38646,7 +40615,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38657,7 +40628,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38668,7 +40641,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38681,7 +40656,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38692,7 +40669,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38703,7 +40682,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38716,7 +40697,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38727,7 +40710,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38738,7 +40723,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38757,7 +40744,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38768,7 +40757,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38779,7 +40770,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38798,7 +40791,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38809,7 +40804,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38820,7 +40817,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38845,7 +40844,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38856,7 +40857,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38867,7 +40870,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38880,7 +40885,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38891,7 +40898,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38902,7 +40911,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38915,7 +40926,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38926,7 +40939,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38937,7 +40952,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38954,7 +40971,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38965,7 +40982,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38976,7 +40993,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38987,7 +41004,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38998,7 +41017,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39009,7 +41030,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39022,7 +41045,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39033,7 +41056,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39044,7 +41067,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39055,7 +41078,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39066,7 +41091,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39077,7 +41104,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39090,7 +41119,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39101,7 +41130,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39112,7 +41141,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39123,7 +41152,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39134,7 +41165,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39145,7 +41178,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39158,7 +41193,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39169,7 +41204,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39180,7 +41215,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMSae(Sz256, Sz256) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMSae(Sz256, Sz256) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39191,7 +41226,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39202,7 +41237,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39213,7 +41248,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39226,7 +41261,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39237,7 +41272,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39248,7 +41283,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39259,7 +41294,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39270,7 +41307,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39281,7 +41320,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39292,7 +41333,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39303,7 +41346,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39314,7 +41359,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39327,7 +41374,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39338,7 +41385,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39349,7 +41396,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39360,7 +41407,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39371,7 +41420,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39382,7 +41433,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39393,7 +41446,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39404,7 +41459,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39415,7 +41472,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39428,7 +41487,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39439,7 +41500,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39450,7 +41513,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39461,7 +41526,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39476,7 +41543,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39487,7 +41554,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39498,7 +41565,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39511,7 +41578,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39522,7 +41589,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39533,7 +41600,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39544,7 +41611,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39557,7 +41624,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39568,7 +41635,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39579,7 +41646,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39590,7 +41657,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39603,7 +41670,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39614,7 +41681,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39627,7 +41694,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39638,7 +41705,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39649,7 +41716,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39662,7 +41729,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39673,7 +41740,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39684,7 +41751,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39697,7 +41764,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39708,7 +41776,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39719,7 +41788,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39732,7 +41802,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39743,7 +41814,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39754,7 +41826,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39767,7 +41840,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39778,7 +41851,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39789,7 +41862,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39800,7 +41873,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39811,7 +41884,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39822,7 +41895,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39835,7 +41908,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39846,7 +41919,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39857,7 +41930,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39868,7 +41941,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39879,7 +41952,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39890,7 +41963,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39903,7 +41976,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39914,7 +41987,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39925,7 +41998,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39936,7 +42009,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39947,7 +42020,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39958,7 +42031,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39971,7 +42044,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39982,7 +42055,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39993,7 +42066,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40004,7 +42077,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40015,7 +42088,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40026,7 +42099,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40039,7 +42112,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40050,7 +42123,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40061,7 +42134,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40072,7 +42145,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40083,7 +42156,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40094,7 +42167,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40107,7 +42180,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40118,7 +42191,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40129,7 +42202,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40140,7 +42213,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40151,7 +42224,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40162,7 +42235,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40175,7 +42248,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40186,7 +42259,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40197,7 +42270,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40208,7 +42281,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40219,7 +42292,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40230,7 +42303,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40241,7 +42314,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40252,7 +42325,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40263,7 +42336,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40274,7 +42347,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40285,7 +42358,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40296,7 +42369,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40309,7 +42382,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40320,7 +42395,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40331,7 +42408,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40342,7 +42421,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40353,7 +42434,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40364,7 +42447,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40375,7 +42460,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40386,7 +42473,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40397,7 +42486,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40408,7 +42499,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40419,7 +42512,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40430,7 +42525,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40443,7 +42540,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40454,7 +42553,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40465,7 +42566,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40476,7 +42579,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40487,7 +42590,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40498,7 +42601,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40509,7 +42612,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40520,7 +42623,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40531,7 +42634,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40544,7 +42647,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40555,7 +42660,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40566,7 +42673,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40577,7 +42686,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40588,7 +42697,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40599,7 +42708,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40610,7 +42719,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40621,7 +42730,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40632,7 +42741,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40645,7 +42754,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40656,7 +42765,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40667,7 +42776,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40678,7 +42787,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40689,7 +42798,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40700,7 +42809,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40713,7 +42822,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40724,7 +42835,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40735,7 +42848,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40748,7 +42863,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40759,7 +42876,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40770,7 +42889,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40781,7 +42902,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40792,7 +42915,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40803,7 +42928,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40816,7 +42943,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40827,7 +42956,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40844,7 +42975,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40855,7 +42986,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40866,7 +42997,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40877,7 +43008,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40888,7 +43019,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40899,7 +43030,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40912,7 +43043,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40923,7 +43054,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40934,7 +43065,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40945,7 +43076,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40956,7 +43087,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40967,7 +43098,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40980,7 +43111,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40991,7 +43122,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41002,7 +43133,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41013,7 +43144,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41024,7 +43155,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41035,7 +43166,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz512 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41048,7 +43179,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41059,7 +43190,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41070,7 +43201,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41081,7 +43212,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41092,7 +43223,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41103,7 +43234,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41116,7 +43247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41127,7 +43258,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41138,7 +43269,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41149,7 +43280,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg Sz128 |] + Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41160,7 +43291,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz256 |] + Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41171,7 +43302,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41184,7 +43315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41195,7 +43326,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41206,7 +43337,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41217,7 +43348,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41228,7 +43359,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41239,7 +43370,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41252,7 +43383,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41263,7 +43396,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41274,7 +43409,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41285,7 +43422,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41298,7 +43437,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41309,7 +43450,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41320,7 +43463,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41333,7 +43478,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41344,7 +43491,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41355,7 +43504,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41366,7 +43517,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41377,7 +43528,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41388,7 +43539,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41399,7 +43550,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41410,7 +43561,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41421,7 +43572,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41434,7 +43585,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41445,7 +43598,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41456,7 +43611,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41467,7 +43624,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41478,7 +43637,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41489,7 +43650,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41500,7 +43663,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41511,7 +43674,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41522,7 +43685,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41533,7 +43696,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41544,7 +43707,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41555,7 +43718,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41568,7 +43731,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41579,7 +43744,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41590,7 +43757,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41601,7 +43770,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; OpMaskReg |] + Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41612,7 +43781,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; OpMaskReg |] + Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41623,7 +43792,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; OpMaskReg |] + Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41636,7 +43805,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41647,7 +43818,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41658,7 +43831,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41669,7 +43844,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41680,7 +43857,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41691,7 +43870,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41704,7 +43885,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41715,7 +43898,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41726,7 +43911,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41739,7 +43926,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41750,7 +43939,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41761,7 +43952,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41772,7 +43965,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41783,7 +43978,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41794,7 +43991,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41807,7 +44006,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41818,7 +44019,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41829,7 +44032,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41842,7 +44047,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41853,7 +44060,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41864,7 +44073,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41875,7 +44086,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41886,7 +44099,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41897,7 +44112,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41910,7 +44127,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41921,7 +44140,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41932,7 +44153,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41943,7 +44166,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41954,7 +44179,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41965,7 +44192,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41980,7 +44209,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41991,7 +44221,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42002,7 +44233,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42013,7 +44245,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42024,7 +44257,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42035,7 +44269,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42048,7 +44283,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42059,7 +44296,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42072,7 +44311,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42083,7 +44323,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42094,7 +44335,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42105,7 +44347,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42116,7 +44359,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42127,7 +44371,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42140,7 +44385,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42151,7 +44398,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42162,7 +44411,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42173,7 +44424,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42184,7 +44437,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42195,7 +44450,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42208,7 +44465,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42219,7 +44478,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42230,7 +44491,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42241,7 +44504,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42252,7 +44517,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42263,7 +44530,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42276,7 +44545,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42287,7 +44558,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42298,7 +44571,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42309,7 +44584,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42320,7 +44597,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42331,7 +44610,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42352,7 +44633,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42363,7 +44645,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42374,7 +44657,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42385,7 +44669,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42396,7 +44681,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42407,7 +44693,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42420,7 +44707,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42431,7 +44720,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42444,7 +44735,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42455,7 +44747,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42466,7 +44759,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42477,7 +44771,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42488,7 +44783,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42499,7 +44795,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42512,7 +44809,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42523,7 +44822,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42536,7 +44837,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42547,7 +44850,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42558,7 +44863,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42571,7 +44878,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42582,7 +44891,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42593,7 +44904,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42606,7 +44919,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42617,7 +44932,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42628,7 +44945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42639,7 +44958,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42650,7 +44971,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42661,7 +44984,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42672,7 +44997,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42685,7 +45012,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42696,7 +45025,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42707,7 +45038,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42718,7 +45051,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42731,7 +45066,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42742,7 +45077,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42753,7 +45088,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42764,7 +45099,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42775,7 +45110,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42786,7 +45121,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42799,7 +45134,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42810,7 +45146,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42821,7 +45158,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42832,7 +45170,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42843,7 +45182,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42854,7 +45194,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42871,7 +45212,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42882,7 +45223,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42893,7 +45234,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42906,7 +45247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42917,7 +45258,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42928,7 +45269,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42939,7 +45280,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42950,7 +45291,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42961,7 +45302,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42974,7 +45315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42985,7 +45326,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42996,7 +45337,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz128 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43007,7 +45348,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43020,7 +45361,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43031,7 +45372,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz256 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43056,7 +45397,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43067,7 +45408,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43078,7 +45420,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43089,7 +45431,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43100,7 +45443,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43111,7 +45454,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43122,7 +45466,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43133,7 +45477,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43144,7 +45489,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Mem Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43155,7 +45500,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43166,7 +45512,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Mem Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43177,7 +45523,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43190,7 +45537,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43201,7 +45548,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43212,7 +45560,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43223,7 +45571,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RMBit) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43234,7 +45583,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg Sz512 |] + Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43245,7 +45594,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RMBit) + Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43256,7 +45606,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg Sz128 |] + Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43267,7 +45617,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RMBit) + Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43278,7 +45629,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg Sz256 |] + Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43289,7 +45640,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RMBit) + Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43300,7 +45652,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg Sz512 |] + Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43311,7 +45663,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RMBit) + Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43324,7 +45677,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43335,7 +45690,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43346,7 +45703,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43357,7 +45716,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43368,7 +45729,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43379,7 +45742,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43392,7 +45757,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43403,7 +45770,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43414,7 +45783,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43425,7 +45796,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43436,7 +45809,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43447,7 +45822,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43460,7 +45837,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43471,7 +45850,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43482,7 +45863,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43493,7 +45876,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43504,7 +45889,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43515,7 +45902,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43530,7 +45919,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43541,7 +45932,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43552,7 +45945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43563,7 +45958,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43574,7 +45971,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43585,7 +45984,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43612,7 +46013,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43623,7 +46026,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43634,7 +46039,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43647,7 +46054,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43658,7 +46067,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43669,7 +46080,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43680,7 +46093,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43691,7 +46106,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43702,7 +46119,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43715,7 +46134,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43726,7 +46147,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43737,7 +46160,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43748,7 +46173,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43759,7 +46185,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43770,7 +46197,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43781,7 +46209,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43792,7 +46222,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43803,7 +46235,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43816,7 +46250,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43827,7 +46263,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43838,7 +46276,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43849,7 +46289,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43860,7 +46302,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43871,7 +46315,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43886,7 +46332,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43897,7 +46345,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43908,7 +46358,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43919,7 +46371,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43930,7 +46384,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43941,7 +46397,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43954,7 +46412,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43965,7 +46425,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43976,7 +46438,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43987,7 +46451,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43998,7 +46464,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44009,7 +46477,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44022,7 +46492,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44033,7 +46505,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44044,7 +46518,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44055,7 +46531,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44066,7 +46544,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44077,7 +46557,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44090,7 +46572,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz8) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44101,7 +46583,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz8) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44112,7 +46594,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz8) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44125,7 +46607,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44136,7 +46618,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44147,7 +46629,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMdiff(Sz128, Sz16) |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44160,7 +46642,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44171,7 +46654,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44182,7 +46666,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44195,7 +46680,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44206,7 +46692,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44217,7 +46704,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44230,7 +46718,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44241,7 +46730,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44252,7 +46742,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44263,7 +46754,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -44274,7 +46766,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -44285,7 +46778,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz64 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -44298,7 +46792,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44309,7 +46805,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44320,7 +46818,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44331,7 +46831,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44342,7 +46844,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44353,7 +46857,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44366,7 +46872,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44377,7 +46885,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44388,7 +46898,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44399,7 +46911,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44410,7 +46924,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44421,7 +46937,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44434,7 +46952,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44445,7 +46965,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44456,7 +46978,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44467,7 +46991,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44478,7 +47004,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44489,7 +47017,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44508,7 +47038,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44519,7 +47051,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44530,7 +47064,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44551,7 +47087,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44562,7 +47098,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44573,7 +47109,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44584,7 +47120,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44595,7 +47131,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44606,7 +47142,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44619,7 +47155,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44630,7 +47166,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44641,7 +47177,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44652,7 +47188,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44663,7 +47199,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44674,7 +47210,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44687,7 +47223,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44698,7 +47234,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44709,7 +47245,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44720,7 +47256,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44731,7 +47267,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44742,7 +47278,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44755,7 +47291,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44766,7 +47302,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44777,7 +47313,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44788,7 +47324,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz128 |] + Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44799,7 +47335,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz256 |] + Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44810,7 +47346,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg Sz512 |] + Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44825,7 +47361,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44836,7 +47374,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44847,7 +47387,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44858,7 +47400,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44869,7 +47413,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44880,7 +47426,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44895,7 +47443,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128 |] + Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44906,7 +47454,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256 |] + Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44917,7 +47465,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512 |] + Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44930,7 +47478,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44941,7 +47489,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44952,7 +47500,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44963,7 +47511,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44974,7 +47522,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44985,7 +47533,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44998,7 +47546,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45009,7 +47557,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45020,7 +47568,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45031,7 +47579,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45042,7 +47590,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45053,7 +47601,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz64 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45066,7 +47614,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45077,7 +47625,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45088,7 +47636,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45099,7 +47647,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz32 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45110,7 +47658,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz32 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45121,7 +47669,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz32 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45134,7 +47682,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45145,7 +47693,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45156,7 +47704,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45167,7 +47715,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz128; MemVSIB Sz64 |] + Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45178,7 +47726,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz256; MemVSIB Sz64 |] + Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45189,7 +47737,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg Sz512; MemVSIB Sz64 |] + Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45206,7 +47754,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45217,7 +47767,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45228,7 +47780,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45239,7 +47793,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45250,7 +47806,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45261,7 +47819,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45274,7 +47834,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45285,7 +47847,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45296,7 +47860,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45307,7 +47873,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45318,7 +47886,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45329,7 +47899,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45342,7 +47914,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45353,7 +47927,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45364,7 +47940,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45375,7 +47953,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45386,7 +47966,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45397,7 +47979,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45410,7 +47994,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45421,7 +48007,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45434,7 +48022,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45445,7 +48035,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45456,7 +48048,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45467,7 +48061,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45478,7 +48074,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45489,7 +48087,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45500,7 +48100,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45513,7 +48115,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45524,7 +48128,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45535,7 +48141,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45548,7 +48156,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45559,7 +48169,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45570,7 +48182,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45581,7 +48195,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45592,7 +48208,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45603,7 +48221,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45616,7 +48236,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45627,7 +48249,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45640,7 +48264,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45651,7 +48277,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45662,7 +48290,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45673,7 +48303,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45684,7 +48316,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45695,7 +48329,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45708,7 +48344,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45719,7 +48357,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45732,7 +48372,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45743,7 +48383,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45754,7 +48394,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45765,7 +48405,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45776,7 +48416,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45787,7 +48427,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45800,7 +48440,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45811,7 +48451,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45822,7 +48462,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45833,7 +48473,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45844,7 +48484,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45855,7 +48495,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz512 |] + Operands = [| MemVSIB Sz64; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45868,7 +48508,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45879,7 +48519,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45890,7 +48530,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45901,7 +48541,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz128 |] + Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45912,7 +48552,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz256 |] + Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45923,7 +48563,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg Sz512 |] + Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45936,7 +48576,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45947,7 +48587,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45958,7 +48598,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45969,7 +48609,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz128 |] + Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45980,7 +48620,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz256 |] + Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45991,7 +48631,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg Sz512 |] + Operands = [| MemVSIB Sz64; Reg(Sz512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46008,7 +48648,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46019,7 +48661,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46030,7 +48674,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46041,7 +48687,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46052,7 +48700,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46063,7 +48713,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46076,7 +48728,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46087,7 +48741,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46098,7 +48754,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46109,7 +48767,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46120,7 +48780,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46131,7 +48793,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46144,7 +48808,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46155,7 +48821,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46166,7 +48834,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46177,7 +48847,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46188,7 +48860,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46199,7 +48873,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46212,7 +48888,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46223,7 +48901,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46236,7 +48916,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46247,7 +48929,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46258,7 +48942,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46269,7 +48955,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46280,7 +48968,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46291,7 +48981,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46302,7 +48994,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; Mem Sz128 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46315,7 +49009,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46326,7 +49022,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46337,7 +49035,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; Mem Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + Mem Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46350,7 +49050,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46361,7 +49063,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46372,7 +49076,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46383,7 +49089,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46394,7 +49102,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46405,7 +49115,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46418,7 +49130,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46429,7 +49143,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46442,7 +49158,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46453,7 +49171,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46464,7 +49184,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46475,7 +49197,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46486,7 +49210,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46497,7 +49223,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46510,7 +49238,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46521,7 +49251,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46542,7 +49274,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46553,7 +49287,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46564,7 +49300,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46577,7 +49315,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46588,7 +49328,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46599,7 +49341,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46612,7 +49356,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46623,7 +49369,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46634,7 +49382,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46645,7 +49395,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46656,7 +49408,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46667,7 +49421,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46680,7 +49436,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46691,7 +49449,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46702,7 +49462,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46713,7 +49475,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46724,7 +49488,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46735,7 +49501,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46748,7 +49516,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46759,7 +49529,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46770,7 +49542,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46781,7 +49555,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46792,7 +49568,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46803,7 +49581,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46816,7 +49596,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46827,7 +49609,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46840,7 +49624,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46851,7 +49637,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46862,7 +49650,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46873,7 +49663,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46884,7 +49676,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46895,7 +49689,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46908,7 +49704,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46919,7 +49717,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46932,7 +49732,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46943,7 +49745,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46954,7 +49758,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46965,7 +49771,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46976,7 +49784,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46987,7 +49797,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47000,7 +49812,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47011,7 +49825,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47024,7 +49840,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47035,7 +49853,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47046,7 +49866,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47057,7 +49879,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47068,7 +49892,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47079,7 +49905,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RMBcstEr(Sz512, Sz512, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47092,7 +49920,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47103,7 +49933,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMEr(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMEr(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47124,7 +49956,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47135,7 +49968,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47146,7 +49980,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47157,7 +49992,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47168,7 +50004,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47179,7 +50016,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47374,7 +50212,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47385,7 +50224,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47400,7 +50240,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47411,7 +50252,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47424,7 +50266,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47435,7 +50279,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47448,7 +50294,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47459,7 +50306,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47472,7 +50320,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47483,7 +50333,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32) |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47498,7 +50350,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47509,7 +50363,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47520,7 +50376,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47557,7 +50415,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47568,7 +50428,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47579,7 +50441,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47592,7 +50456,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47603,7 +50469,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47614,7 +50482,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47627,7 +50497,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47638,7 +50510,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47649,7 +50523,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47662,7 +50538,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47673,7 +50551,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47684,7 +50564,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47765,7 +50647,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47776,7 +50660,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47789,7 +50675,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47800,7 +50688,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47815,8 +50705,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -47829,8 +50719,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -47843,8 +50733,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -47857,8 +50747,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -47871,8 +50761,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -47885,8 +50775,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -47901,7 +50791,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47912,7 +50804,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47923,7 +50817,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47936,7 +50832,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47947,7 +50845,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47958,7 +50858,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcst(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47975,7 +50877,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47986,7 +50890,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47997,7 +50903,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48008,7 +50916,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48019,7 +50929,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48030,7 +50942,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48043,7 +50957,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48054,7 +50970,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48065,7 +50983,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48078,7 +50998,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48089,7 +51012,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48102,7 +51028,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48121,7 +51050,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48132,7 +51064,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48143,7 +51078,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48164,7 +51102,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz8) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48177,7 +51117,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz32, Sz16) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48190,7 +51132,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48201,7 +51143,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -48214,7 +51156,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg Sz128; Imm Sz8 |] + Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48227,7 +51169,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48238,7 +51183,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48249,7 +51197,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48260,7 +51211,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48273,7 +51227,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48284,7 +51238,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48295,7 +51249,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48306,7 +51260,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48319,7 +51273,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48330,7 +51287,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48343,7 +51303,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48354,7 +51314,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48369,7 +51329,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg Sz128; Imm Sz8 |] + Operands = [| RMdiff(Sz128, Sz64) + Reg(Sz128, OprRegType.RegBit) + Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48380,7 +51342,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48405,7 +51367,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48419,7 +51381,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48433,7 +51395,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48447,7 +51409,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48461,7 +51423,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48475,7 +51437,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48491,7 +51453,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48505,7 +51467,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48519,7 +51481,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48533,7 +51495,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48547,7 +51509,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48561,7 +51523,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48576,7 +51538,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz32, Sz8); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz32, Sz8) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48589,7 +51554,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMdiff(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48602,7 +51570,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz32; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz32 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48613,7 +51584,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz64; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz64 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -48626,8 +51600,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -48640,8 +51614,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -48654,8 +51628,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -48668,8 +51642,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -48686,8 +51660,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48700,8 +51674,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48714,8 +51688,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48728,8 +51702,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48742,8 +51716,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48756,8 +51730,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -48772,7 +51746,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48783,7 +51759,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48794,7 +51772,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48805,7 +51785,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48816,7 +51798,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48827,7 +51811,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48838,7 +51824,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48849,7 +51837,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48860,7 +51850,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48873,7 +51865,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48884,7 +51879,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48895,7 +51893,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48940,7 +51941,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48951,7 +51955,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48962,7 +51969,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48973,7 +51983,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48986,7 +51999,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48997,7 +52010,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49008,7 +52021,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz256; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49019,7 +52032,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49032,7 +52045,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49043,7 +52059,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49056,7 +52075,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49067,7 +52086,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg Sz512; Imm Sz8 |] + Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49084,7 +52103,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49095,7 +52117,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49106,7 +52131,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49117,7 +52145,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49128,7 +52159,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49139,7 +52173,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49152,7 +52189,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49163,7 +52203,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49174,7 +52217,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49185,7 +52231,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49196,7 +52245,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49207,7 +52259,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49224,7 +52279,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49235,7 +52293,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49246,7 +52307,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49259,8 +52323,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -49273,8 +52337,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVM @@ -49287,8 +52351,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -49301,8 +52365,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVM @@ -49317,7 +52381,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49328,7 +52395,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49339,7 +52409,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49374,8 +52447,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49388,8 +52461,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49402,8 +52475,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49416,8 +52489,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49430,8 +52503,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49444,8 +52517,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49460,7 +52533,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49471,7 +52547,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49488,8 +52567,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49502,8 +52581,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49516,8 +52595,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49530,8 +52609,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49544,8 +52623,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49558,8 +52637,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49574,7 +52653,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49585,7 +52667,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49598,7 +52683,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49609,7 +52696,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49620,7 +52709,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz64) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49631,7 +52722,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49642,7 +52735,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49653,7 +52748,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz16) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49664,7 +52761,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + RMBcst(Sz128, Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49675,7 +52774,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + RMBcst(Sz256, Sz256, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49686,7 +52787,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; RMBcstSae(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + RMBcstSae(Sz512, Sz512, Sz32) + Imm Sz8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49699,7 +52802,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz64); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz64) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49710,7 +52816,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49721,7 +52830,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RMSae(Sz128, Sz32); Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz32) + Imm Sz8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49914,7 +53026,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49925,7 +53040,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49936,7 +53054,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49949,8 +53070,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49963,8 +53084,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49977,8 +53098,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -49991,8 +53112,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50005,8 +53126,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50019,8 +53140,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50035,7 +53156,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128; Reg Sz128; RM Sz128; Imm Sz8 |] + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) + RM Sz128 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50046,7 +53170,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256; Reg Sz256; RM Sz256; Imm Sz8 |] + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) + RM Sz256 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50057,7 +53184,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512; Reg Sz512; RM Sz512; Imm Sz8 |] + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) + RM Sz512 + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50070,8 +53200,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50084,8 +53214,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50098,8 +53228,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz32) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50112,8 +53242,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50126,8 +53256,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50140,8 +53270,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50313,7 +53443,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz128 + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz16) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50327,7 +53457,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz256 + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz16) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50341,7 +53471,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg Sz512 + Reg(Sz512, OprRegType.VVVV) RMBcstSae(Sz512, Sz512, Sz16) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50354,7 +53484,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg Sz128; RMSae(Sz128, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg + Reg(Sz128, OprRegType.VVVV) + RMSae(Sz128, Sz16) + Imm Sz8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50389,8 +53522,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50403,8 +53536,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50417,8 +53550,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50433,8 +53566,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz128 - Reg Sz128 + Operands = [| Reg(Sz128, OprRegType.RegBit) + Reg(Sz128, OprRegType.VVVV) RMBcst(Sz128, Sz128, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50447,8 +53580,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz256 - Reg Sz256 + Operands = [| Reg(Sz256, OprRegType.RegBit) + Reg(Sz256, OprRegType.VVVV) RMBcst(Sz256, Sz256, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI @@ -50461,8 +53594,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg Sz512 - Reg Sz512 + Operands = [| Reg(Sz512, OprRegType.RegBit) + Reg(Sz512, OprRegType.VVVV) RMBcst(Sz512, Sz512, Sz64) Imm Sz8 |] OpEn = OpEn.RVMI diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 301e7f8c4..19db0815c 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -59,7 +59,7 @@ type OperandType = /// Register with suppress-all-exceptions {sae} (only EVEX). | RegSae of OprSize /// Register. - | Reg of OprSize + | Reg of OprSize * OprRegType /// Address-size-dependent register operand. | RegAddr /// Opmask register. @@ -114,6 +114,14 @@ and OprSize = | Sz1024 | SzUnknown +and OprRegType = + | RegBit (* ModRM:reg *) + | RMBit (* ModRM:r/m *) + | VVVV (* (E)VEX.vvvv *) + | IS4 (* imm8[7:4] *) + | OpRd (* opcode + rd *) + | Unused + type ModRMType = | NoModRM | ModRM of OprType (* /r *) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 3dcd20288..3bf536da2 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -72,7 +72,7 @@ type IntelParser(wordSz, reader) = let getOperandSize operands = Array.map (fun o -> match o with - | RM sz | Reg sz | Mem sz | Imm sz | Rel sz -> Some sz + | RM sz | Reg(sz, _) | Mem sz | Imm sz | Rel sz -> Some sz | FixedReg(Register.AX) -> Some Sz16 | _ -> None) operands |> Array.distinct @@ -307,40 +307,42 @@ type IntelParser(wordSz, reader) = | Opcode.POP | Opcode.PUSH -> SzCond.D64 | _ -> SzCond.Normal - let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) i = - function + let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) opr + = + // FIXME: need operand size determination logic + match opr with | RM sz -> let sz = oprSizeToRegType sz - // FIXME: need operand size determination logic setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemOrReg modRM span phlp | RMdiff(regSz, memSz) -> let regSz = oprSizeToRegType regSz let memSz = oprSizeToRegType memSz - // FIXME: need operand size determination logic setMemoryOperandContextWithCurrentAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp - | Reg sz when ic.OpEn = OpEn.O || ic.OpEn = OpEn.OI -> - // Opcode[2:0] contains the operand. + | Reg(sz, OprRegType.OpRd) -> (* Opcode[2:0] contains the operand. *) let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) OperandParsers.getOprFromRegGrpREX regBit phlp - | Reg sz -> + | Reg(sz, oprRegType) -> let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz - match ic.OpEn with - | OpEn.RVM | OpEn.RVMI when i = 1 -> OperandParsers.parseVVVVReg phlp - | OpEn.VMI when i = 0 -> OperandParsers.parseVVVVReg phlp - | OpEn.RM when i = 1 -> + match oprRegType with + | OprRegType.OpRd -> + let regBit = Operands.getRM (uint8 ic.OpcodeByte) + OperandParsers.getOprFromRegGrpREX regBit phlp + | OprRegType.VVVV -> OperandParsers.parseVVVVReg phlp + | OprRegType.RMBit -> OperandParsers.findRegRmAndSIBBase phlp.MemEffRegSize phlp.REXPrefix (Operands.getRM modRM) |> OprReg - | OpEn.MI -> - OperandParsers.findRegRmAndSIBBase phlp.MemEffRegSize phlp.REXPrefix - (Operands.getRM modRM) |> OprReg - | _ -> + | OprRegType.RegBit -> OperandParsers.findRegRBits sz phlp.REXPrefix (Operands.getReg modRM) |> OprReg + | OprRegType.IS4 -> + let regBit = phlp.ReadByte span >>> 4 &&& 0b1111uy |> int + OperandParsers.findRegRBits sz phlp.REXPrefix regBit |> OprReg + | OprRegType.Unused -> failwith "Unused OprRegType." (* FixedReg *) | Mem SzUnknown -> // FIXME: need operand size determination logic let effAddrSz = ParsingHelper.GetEffAddrSize phlp @@ -437,7 +439,7 @@ type IntelParser(wordSz, reader) = let sz = getOperandSize ic.Operands for i = 0 to ic.Operands.Length - 1 do let opr = ic.Operands[i] - operands[i] <- parseOperand span phlp sz modRM ic i opr + operands[i] <- parseOperand span phlp sz modRM ic opr operands |> operandsArrayToOperands let applyMandatoryPrefixFilter (phlp: ParsingHelper) prefixType = From 2470ac5724b013021beb6b307cb481a3207f7778 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 7 May 2026 19:33:54 +0900 Subject: [PATCH 16/26] [Intel] Replace OprSize to RegType --- src/FrontEnd/Intel/Intel.fs | 14384 +++++++++++++++-------------- src/FrontEnd/Intel/IntelTypes.fs | 52 +- src/FrontEnd/Intel/Parser.fs | 57 +- 3 files changed, 7305 insertions(+), 7188 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 0a0abb4b5..030facc72 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -1,5 +1,7 @@ module B2R2.FrontEnd.Intel.InstructionArrays +open B2R2 + let (norOne: InstructionCore[][]) = [| [| // index 0(0x00) @@ -9,7 +11,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22,7 +24,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33,7 +35,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44,7 +46,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -57,7 +59,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -70,7 +72,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -81,7 +83,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -92,7 +94,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -105,7 +107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -118,7 +120,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -129,7 +131,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -140,7 +142,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -179,7 +181,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -192,7 +194,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -203,7 +205,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -214,7 +216,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -227,7 +229,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -240,7 +242,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -251,7 +253,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -262,7 +264,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -275,7 +277,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -288,7 +290,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -299,7 +301,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -310,7 +312,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -338,7 +340,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -351,7 +353,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -362,7 +364,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -373,7 +375,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -386,7 +388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -399,7 +401,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -410,7 +412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -421,7 +423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -434,7 +436,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -447,7 +449,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -458,7 +460,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -469,7 +471,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -508,7 +510,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -521,7 +523,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -532,7 +534,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -543,7 +545,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -556,7 +558,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -569,7 +571,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -580,7 +582,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -591,7 +593,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -604,7 +606,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -617,7 +619,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -628,7 +630,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -639,7 +641,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -678,7 +680,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -691,7 +693,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -702,7 +704,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -713,7 +715,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -726,7 +728,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -739,7 +741,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -750,7 +752,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -761,7 +763,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -774,7 +776,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -787,7 +789,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -798,7 +800,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -809,7 +811,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -837,7 +839,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -850,7 +852,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -861,7 +863,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -872,7 +874,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -885,7 +887,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -898,7 +900,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -909,7 +911,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -920,7 +922,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -933,7 +935,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -946,7 +948,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -957,7 +959,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -968,7 +970,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -996,7 +998,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1009,7 +1011,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1020,7 +1022,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1031,7 +1033,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1044,7 +1046,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1057,7 +1059,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1068,7 +1070,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1079,7 +1081,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1092,7 +1094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1105,7 +1107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1116,7 +1118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1127,7 +1129,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1155,7 +1157,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1168,7 +1170,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1179,7 +1181,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1190,7 +1192,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1203,7 +1205,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1216,7 +1218,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1227,7 +1229,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1238,7 +1240,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1251,7 +1253,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1264,7 +1266,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1275,7 +1277,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1286,7 +1288,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1314,7 +1316,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1325,7 +1327,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1338,7 +1340,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1349,7 +1351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1362,7 +1364,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1373,7 +1375,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1386,7 +1388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1397,7 +1399,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1410,7 +1412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1421,7 +1423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1434,7 +1436,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1445,7 +1447,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1458,7 +1460,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1469,7 +1471,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1482,7 +1484,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1493,7 +1495,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1506,7 +1508,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1517,7 +1519,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1530,7 +1532,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1541,7 +1543,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1554,7 +1556,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1565,7 +1567,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1578,7 +1580,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1589,7 +1591,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1602,7 +1604,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1613,7 +1615,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1626,7 +1628,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1637,7 +1639,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1650,7 +1652,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1661,7 +1663,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1674,7 +1676,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1685,7 +1687,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1698,7 +1700,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1709,7 +1711,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1720,7 +1722,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1733,7 +1735,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1744,7 +1746,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1755,7 +1757,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1768,7 +1770,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1779,7 +1781,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1790,7 +1792,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1803,7 +1805,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1814,7 +1816,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1825,7 +1827,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1838,7 +1840,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1849,7 +1851,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1860,7 +1862,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1873,7 +1875,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1884,7 +1886,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1895,7 +1897,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1908,7 +1910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1919,7 +1921,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1930,7 +1932,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1943,7 +1945,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1954,7 +1956,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1965,7 +1967,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1978,7 +1980,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1989,7 +1991,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2000,7 +2002,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2013,7 +2015,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2024,7 +2026,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2035,7 +2037,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2048,7 +2050,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2059,7 +2061,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2070,7 +2072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2083,7 +2085,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2094,7 +2096,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2105,7 +2107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2118,7 +2120,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2129,7 +2131,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2140,7 +2142,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2153,7 +2155,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2164,7 +2166,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2175,7 +2177,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2188,7 +2190,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2199,7 +2201,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2210,7 +2212,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2223,7 +2225,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd) |] + Operands = [| Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2234,7 +2236,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2245,7 +2247,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2306,7 +2308,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2317,7 +2319,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2330,7 +2332,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2341,7 +2343,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2352,7 +2354,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2363,7 +2365,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2384,7 +2386,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16 |] + Operands = [| Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2395,7 +2397,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz32 |] + Operands = [| Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2408,7 +2410,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16; Imm Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16; Imm 16 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2419,7 +2421,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2430,7 +2432,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz32 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2443,7 +2445,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2456,7 +2458,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16; Imm Sz8 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2467,7 +2469,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2478,7 +2480,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz8 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2491,7 +2493,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8; FixedReg(Register.DX) |] + Operands = [| Mem 8; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2515,7 +2517,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16; FixedReg(Register.DX) |] + Operands = [| Mem 16; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2526,7 +2528,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; FixedReg(Register.DX) |] + Operands = [| Mem 32; FixedReg(Register.DX) |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2561,7 +2563,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem Sz8 |] + Operands = [| FixedReg(Register.DX); Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2585,7 +2587,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem Sz16 |] + Operands = [| FixedReg(Register.DX); Mem 16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2596,7 +2598,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem Sz32 |] + Operands = [| FixedReg(Register.DX); Mem 32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2631,7 +2633,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2644,7 +2646,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2657,7 +2659,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2668,7 +2670,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2679,7 +2681,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2692,7 +2694,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2703,7 +2705,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2714,7 +2716,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2727,7 +2729,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2738,7 +2740,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2751,7 +2753,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2762,7 +2764,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2775,7 +2777,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2786,7 +2788,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2799,7 +2801,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2810,7 +2812,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2823,7 +2825,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2836,7 +2838,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2849,7 +2851,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2860,7 +2862,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2873,7 +2875,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2884,7 +2886,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2897,7 +2899,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2908,7 +2910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2921,7 +2923,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2932,7 +2934,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2945,7 +2947,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2956,7 +2958,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2969,7 +2971,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2980,7 +2982,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2993,7 +2995,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3004,7 +3006,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3015,7 +3017,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3026,7 +3028,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3037,7 +3039,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3048,7 +3050,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3059,7 +3061,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3070,7 +3072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3083,7 +3085,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3094,7 +3096,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3105,7 +3107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3116,7 +3118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3127,7 +3129,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3138,7 +3140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3149,7 +3151,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3160,7 +3162,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3171,7 +3173,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3182,7 +3184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3193,7 +3195,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3204,7 +3206,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3215,7 +3217,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3226,7 +3228,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3237,7 +3239,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3248,7 +3250,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3259,7 +3261,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3270,7 +3272,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3281,7 +3283,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3292,7 +3294,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3303,7 +3305,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3314,7 +3316,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3325,7 +3327,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3336,7 +3338,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3351,7 +3353,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3362,7 +3364,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3373,7 +3375,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3384,7 +3386,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3395,7 +3397,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3406,7 +3408,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3417,7 +3419,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3428,7 +3430,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3439,7 +3441,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3450,7 +3452,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3461,7 +3463,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3472,7 +3474,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3483,7 +3485,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3494,7 +3496,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3505,7 +3507,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3516,7 +3518,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3527,7 +3529,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3538,7 +3540,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3549,7 +3551,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3560,7 +3562,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3571,7 +3573,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3582,7 +3584,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3593,7 +3595,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3604,7 +3606,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3617,7 +3619,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3630,7 +3632,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3641,7 +3643,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3652,7 +3654,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3665,7 +3667,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3676,7 +3678,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3689,7 +3691,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3700,7 +3702,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3711,7 +3713,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3722,7 +3724,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3733,7 +3735,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3744,7 +3746,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3757,7 +3759,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3770,7 +3772,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3781,7 +3783,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3792,7 +3794,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3805,7 +3807,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz8, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3818,7 +3820,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3829,7 +3831,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3840,7 +3842,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3853,7 +3855,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Sreg |] + Operands = [| RM 16; Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3864,7 +3866,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16); Sreg |] + Operands = [| RMdiff(32, 16); Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3875,7 +3877,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz64, Sz16); Sreg |] + Operands = [| RMdiff(64, 16); Sreg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3888,7 +3890,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3899,7 +3901,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3910,7 +3912,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3923,7 +3925,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Sreg; RM Sz16 |] + Operands = [| Sreg; RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3934,7 +3936,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Sreg; RM Sz64 |] + Operands = [| Sreg; RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3947,7 +3949,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3958,7 +3960,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -3969,7 +3971,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4004,7 +4006,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4015,7 +4017,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4026,7 +4028,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4037,7 +4039,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4048,7 +4050,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4059,7 +4061,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4072,7 +4074,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4083,7 +4085,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4094,7 +4096,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4105,7 +4107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4116,7 +4118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4127,7 +4129,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4140,7 +4142,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4151,7 +4153,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4162,7 +4164,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4173,7 +4175,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4184,7 +4186,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4195,7 +4197,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4208,7 +4210,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4219,7 +4221,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4230,7 +4232,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4241,7 +4243,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4252,7 +4254,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4263,7 +4265,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4276,7 +4278,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4287,7 +4289,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4298,7 +4300,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4309,7 +4311,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4320,7 +4322,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4331,7 +4333,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4344,7 +4346,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4355,7 +4357,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4366,7 +4368,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4377,7 +4379,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4388,7 +4390,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4399,7 +4401,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4412,7 +4414,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4423,7 +4425,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4434,7 +4436,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4445,7 +4447,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4456,7 +4458,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4467,7 +4469,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4480,7 +4482,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(Sz16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4491,7 +4493,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4502,7 +4504,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(Sz32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4513,7 +4515,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(Sz64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4524,7 +4526,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4535,7 +4537,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4618,7 +4620,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Far Sz16 |] + Operands = [| Far 16 |] OpEn = OpEn.D Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -4629,7 +4631,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Far Sz32 |] + Operands = [| Far 32 |] OpEn = OpEn.D Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -4762,7 +4764,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Moffs Sz8 |] + Operands = [| FixedReg(Register.AL); Moffs 8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4773,7 +4775,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Moffs Sz8 |] + Operands = [| FixedReg(Register.AL); Moffs 8 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4786,7 +4788,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Moffs Sz16 |] + Operands = [| FixedReg(Register.AX); Moffs 16 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4797,7 +4799,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Moffs Sz32 |] + Operands = [| FixedReg(Register.EAX); Moffs 32 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4808,7 +4810,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Moffs Sz64 |] + Operands = [| FixedReg(Register.RAX); Moffs 64 |] OpEn = OpEn.FD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4821,7 +4823,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz8; FixedReg(Register.AL) |] + Operands = [| Moffs 8; FixedReg(Register.AL) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4832,7 +4834,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz8; FixedReg(Register.AL) |] + Operands = [| Moffs 8; FixedReg(Register.AL) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4845,7 +4847,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz16; FixedReg(Register.AX) |] + Operands = [| Moffs 16; FixedReg(Register.AX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4856,7 +4858,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz32; FixedReg(Register.EAX) |] + Operands = [| Moffs 32; FixedReg(Register.EAX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4867,7 +4869,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Moffs Sz64; FixedReg(Register.RAX) |] + Operands = [| Moffs 64; FixedReg(Register.RAX) |] OpEn = OpEn.TD Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4928,7 +4930,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8; Mem Sz8 |] + Operands = [| Mem 8; Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4952,7 +4954,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16; Mem Sz16 |] + Operands = [| Mem 16; Mem 16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4963,7 +4965,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Mem Sz32 |] + Operands = [| Mem 32; Mem 32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4974,7 +4976,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Mem Sz64 |] + Operands = [| Mem 64; Mem 64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5020,7 +5022,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5033,7 +5035,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz16 |] + Operands = [| FixedReg(Register.AX); Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5044,7 +5046,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz32 |] + Operands = [| FixedReg(Register.EAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5055,7 +5057,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Imm Sz32 |] + Operands = [| FixedReg(Register.RAX); Imm 32 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5068,7 +5070,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5092,7 +5094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5103,7 +5105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5114,7 +5116,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5160,7 +5162,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5184,7 +5186,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5195,7 +5197,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5206,7 +5208,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5252,7 +5254,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5276,7 +5278,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5287,7 +5289,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5298,7 +5300,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5344,7 +5346,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5357,7 +5359,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5370,7 +5372,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5383,7 +5385,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5396,7 +5398,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5409,7 +5411,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5422,7 +5424,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5435,7 +5437,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz8, OprRegType.OpRd); Imm Sz8 |] + Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5448,7 +5450,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5459,7 +5461,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5470,7 +5472,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5483,7 +5485,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5494,7 +5496,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5505,7 +5507,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5518,7 +5520,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5529,7 +5531,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5540,7 +5542,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5553,7 +5555,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5564,7 +5566,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5575,7 +5577,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5588,7 +5590,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5599,7 +5601,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5610,7 +5612,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5623,7 +5625,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5634,7 +5636,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5645,7 +5647,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5658,7 +5660,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5669,7 +5671,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5680,7 +5682,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5693,7 +5695,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz16, OprRegType.OpRd); Imm Sz16 |] + Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5704,7 +5706,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd); Imm Sz32 |] + Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5715,7 +5717,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd); Imm Sz64 |] + Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5728,7 +5730,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5739,7 +5741,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5750,7 +5752,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5761,7 +5763,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5772,7 +5774,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5783,7 +5785,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5794,7 +5796,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5805,7 +5807,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5818,7 +5820,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5829,7 +5831,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5840,7 +5842,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5851,7 +5853,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5862,7 +5864,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5873,7 +5875,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5884,7 +5886,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5895,7 +5897,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5906,7 +5908,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5917,7 +5919,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5928,7 +5930,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5939,7 +5941,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5950,7 +5952,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5961,7 +5963,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5972,7 +5974,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5983,7 +5985,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5994,7 +5996,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6005,7 +6007,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6016,7 +6018,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6027,7 +6029,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6038,7 +6040,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6049,7 +6051,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6060,7 +6062,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6071,7 +6073,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6084,7 +6086,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16 |] + Operands = [| Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6110,7 +6112,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6121,7 +6123,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6134,7 +6136,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6145,7 +6147,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -6158,7 +6160,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6169,7 +6171,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xF8uy - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6182,7 +6184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6193,7 +6195,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6204,7 +6206,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6215,7 +6217,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xF8uy - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6226,7 +6228,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xF8uy - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6239,7 +6241,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; FixedImm 0 |] + Operands = [| Imm 16; FixedImm 0 |] OpEn = OpEn.II Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6250,7 +6252,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; FixedImm 1 |] + Operands = [| Imm 16; FixedImm 1 |] OpEn = OpEn.II Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6261,7 +6263,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16; Imm Sz8 |] + Operands = [| Imm 16; Imm 8 |] OpEn = OpEn.II Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6309,7 +6311,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz16 |] + Operands = [| Imm 16 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6348,7 +6350,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6409,7 +6411,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6420,7 +6422,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6431,7 +6433,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6442,7 +6444,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6453,7 +6455,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6464,7 +6466,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6475,7 +6477,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6486,7 +6488,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8; FixedImm 1 |] + Operands = [| RM 8; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6499,7 +6501,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6510,7 +6512,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6521,7 +6523,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6532,7 +6534,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6543,7 +6545,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6554,7 +6556,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6565,7 +6567,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6576,7 +6578,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6587,7 +6589,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6598,7 +6600,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6609,7 +6611,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6620,7 +6622,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6631,7 +6633,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6642,7 +6644,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6653,7 +6655,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6664,7 +6666,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6675,7 +6677,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6686,7 +6688,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6697,7 +6699,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6708,7 +6710,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6719,7 +6721,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6730,7 +6732,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; FixedImm 1 |] + Operands = [| RM 16; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6741,7 +6743,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; FixedImm 1 |] + Operands = [| RM 32; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6752,7 +6754,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; FixedImm 1 |] + Operands = [| RM 64; FixedImm 1 |] OpEn = OpEn.M1 Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6765,7 +6767,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6776,7 +6778,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6787,7 +6789,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6798,7 +6800,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6809,7 +6811,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6820,7 +6822,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6831,7 +6833,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6842,7 +6844,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8; FixedReg(Register.CL) |] + Operands = [| RM 8; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6855,7 +6857,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6866,7 +6868,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6877,7 +6879,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6888,7 +6890,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6899,7 +6901,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6910,7 +6912,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6921,7 +6923,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6932,7 +6934,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6943,7 +6945,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6954,7 +6956,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6965,7 +6967,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6976,7 +6978,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -6987,7 +6989,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -6998,7 +7000,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7009,7 +7011,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7020,7 +7022,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7031,7 +7033,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7042,7 +7044,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7053,7 +7055,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7064,7 +7066,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7075,7 +7077,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7086,7 +7088,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; FixedReg(Register.CL) |] + Operands = [| RM 16; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7097,7 +7099,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; FixedReg(Register.CL) |] + Operands = [| RM 32; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7108,7 +7110,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; FixedReg(Register.CL) |] + Operands = [| RM 64; FixedReg(Register.CL) |] OpEn = OpEn.MC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -7132,7 +7134,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -7156,7 +7158,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -7182,7 +7184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.ZO Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7217,7 +7219,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7239,7 +7241,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7272,7 +7274,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7305,7 +7307,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7327,7 +7329,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7349,7 +7351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7371,7 +7373,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7393,7 +7395,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7483,7 +7485,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7582,7 +7584,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7593,7 +7595,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7692,7 +7694,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7703,7 +7705,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7714,7 +7716,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7725,7 +7727,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7815,7 +7817,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7870,7 +7872,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7881,7 +7883,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7892,7 +7894,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7903,7 +7905,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7914,7 +7916,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7925,7 +7927,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -7936,7 +7938,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8037,7 +8039,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8059,7 +8061,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8070,7 +8072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8081,7 +8083,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8092,7 +8094,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz80 |] + Operands = [| Mem 80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8103,7 +8105,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz80 |] + Operands = [| Mem 80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8116,7 +8118,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8138,7 +8140,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8149,7 +8151,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8160,7 +8162,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8182,7 +8184,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8204,7 +8206,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8226,7 +8228,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8248,7 +8250,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8283,7 +8285,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8294,7 +8296,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8305,7 +8307,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8316,7 +8318,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8327,7 +8329,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8349,7 +8351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8371,7 +8373,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8450,7 +8452,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8494,7 +8496,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8527,7 +8529,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8538,7 +8540,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8549,7 +8551,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8582,7 +8584,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8615,7 +8617,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8648,7 +8650,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8661,7 +8663,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem Sz80 |] + Operands = [| Mem 80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8672,7 +8674,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz80 |] + Operands = [| Mem 80 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8705,7 +8707,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8716,7 +8718,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8727,7 +8729,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8738,7 +8740,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8749,7 +8751,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8760,7 +8762,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem Sz16 |] + Operands = [| Mem 16 |] OpEn = OpEn.None Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8784,7 +8786,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8797,7 +8799,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8810,7 +8812,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8823,7 +8825,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -8834,7 +8836,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8845,7 +8847,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -8858,7 +8860,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AL); Imm Sz8 |] + Operands = [| FixedReg(Register.AL); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8871,7 +8873,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Imm Sz8 |] + Operands = [| FixedReg(Register.AX); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8882,7 +8884,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Imm Sz8 |] + Operands = [| FixedReg(Register.EAX); Imm 8 |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8895,7 +8897,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.AL) |] + Operands = [| Imm 8; FixedReg(Register.AL) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8908,7 +8910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.AX) |] + Operands = [| Imm 8; FixedReg(Register.AX) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8919,7 +8921,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Imm Sz8; FixedReg(Register.EAX) |] + Operands = [| Imm 8; FixedReg(Register.EAX) |] OpEn = OpEn.I Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8932,7 +8934,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -8943,7 +8945,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8956,7 +8958,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -8967,7 +8969,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -8980,7 +8982,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Far Sz16 |] + Operands = [| Far 16 |] OpEn = OpEn.S Mode64 = Mode64.Inv Compat = CompatLegMode.Valid @@ -8991,7 +8993,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Far Sz32 |] + Operands = [| Far 32 |] OpEn = OpEn.S Mode64 = Mode64.Inv Compat = CompatLegMode.Valid @@ -9004,7 +9006,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz8 |] + Operands = [| Rel 8 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9191,7 +9193,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9202,7 +9204,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9213,7 +9215,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9224,7 +9226,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9235,7 +9237,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9246,7 +9248,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9257,7 +9259,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8; Imm Sz8 |] + Operands = [| RM 8; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9270,7 +9272,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9281,7 +9283,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9292,7 +9294,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9303,7 +9305,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9314,7 +9316,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9325,7 +9327,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9336,7 +9338,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9347,7 +9349,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9358,7 +9360,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9369,7 +9371,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9380,7 +9382,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9391,7 +9393,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9402,7 +9404,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9413,7 +9415,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9424,7 +9426,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9435,7 +9437,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9446,7 +9448,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9457,7 +9459,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9468,7 +9470,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16; Imm Sz16 |] + Operands = [| RM 16; Imm 16 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9479,7 +9481,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32; Imm Sz32 |] + Operands = [| RM 32; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9490,7 +9492,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64; Imm Sz32 |] + Operands = [| RM 64; Imm 32 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9581,7 +9583,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9592,7 +9594,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9605,7 +9607,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -9616,7 +9618,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -9627,7 +9629,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9638,7 +9640,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Far Sz16 |] + Operands = [| Far 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9649,7 +9651,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Far Sz32 |] + Operands = [| Far 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9660,7 +9662,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Far Sz64 |] + Operands = [| Far 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9671,7 +9673,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9682,7 +9684,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9693,7 +9695,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9704,7 +9706,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9715,7 +9717,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9726,7 +9728,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9737,7 +9739,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -9748,7 +9750,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -9759,7 +9761,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9770,7 +9772,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Far Sz16 |] + Operands = [| Far 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9781,7 +9783,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Far Sz32 |] + Operands = [| Far 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9792,7 +9794,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Far Sz64 |] + Operands = [| Far 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9803,7 +9805,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9814,7 +9816,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -9825,7 +9827,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9842,7 +9844,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9853,7 +9855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9864,7 +9866,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9875,7 +9877,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9886,7 +9888,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9897,7 +9899,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9932,7 +9934,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -9943,7 +9945,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -9954,7 +9956,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -9965,7 +9967,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9976,7 +9978,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -9987,7 +9989,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10064,7 +10066,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10108,7 +10110,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10119,7 +10121,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10130,7 +10132,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10141,7 +10143,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RMdiff(Sz32, Sz16) |] + Operands = [| RMdiff(32, 16) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10152,7 +10154,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RMdiff(Sz64, Sz16) |] + Operands = [| RMdiff(64, 16) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10319,7 +10321,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10330,7 +10332,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10341,7 +10343,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz64, Sz16) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(64, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10354,7 +10356,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10365,7 +10367,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10376,7 +10378,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz32, Sz16) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10495,7 +10497,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10506,7 +10508,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10523,7 +10525,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10534,7 +10537,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10545,7 +10548,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10556,7 +10560,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10567,7 +10571,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10578,7 +10582,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10591,7 +10595,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10602,7 +10607,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10613,7 +10619,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10624,7 +10630,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10637,7 +10643,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10648,8 +10655,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10660,7 +10667,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10671,7 +10678,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10682,7 +10689,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10695,7 +10702,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10706,7 +10713,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10719,7 +10726,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10730,7 +10737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10743,7 +10750,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10754,7 +10761,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10767,7 +10774,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10778,7 +10785,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10789,8 +10796,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10801,7 +10808,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10814,7 +10821,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10825,7 +10832,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10838,7 +10845,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10849,7 +10856,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10860,7 +10867,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10871,7 +10878,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10882,7 +10889,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -10893,7 +10900,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -10908,7 +10915,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz32 |] + Operands = [| BndReg; RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10919,7 +10926,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz64 |] + Operands = [| BndReg; RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -10930,7 +10937,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz32 |] + Operands = [| BndReg; RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10941,7 +10948,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz64 |] + Operands = [| BndReg; RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -10952,7 +10959,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; Mem SzUnknown |] + Operands = [| BndReg; Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10963,7 +10970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; BM Sz64 |] + Operands = [| BndReg; BM 64 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10974,7 +10981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; BM Sz128 |] + Operands = [| BndReg; BM 128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -10987,7 +10994,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz32 |] + Operands = [| BndReg; RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10998,7 +11005,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; RM Sz64 |] + Operands = [| BndReg; RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11009,7 +11016,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; Mem Sz32 |] + Operands = [| BndReg; Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11020,7 +11027,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BndReg; Mem Sz64 |] + Operands = [| BndReg; Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11031,7 +11038,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BM Sz64; BndReg |] + Operands = [| BM 64; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11042,7 +11049,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| BM Sz128; BndReg |] + Operands = [| BM 128; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11053,7 +11060,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem SzUnknown; BndReg |] + Operands = [| Mem 0; BndReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11066,7 +11073,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11103,7 +11110,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11114,7 +11121,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11127,7 +11134,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz16 |] + Operands = [| RM 16 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11138,7 +11145,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11151,7 +11158,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(32, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11162,7 +11169,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(64, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11173,7 +11180,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(64, OprRegType.RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11186,7 +11193,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit); DebugReg |] + Operands = [| Reg(32, OprRegType.RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11197,7 +11204,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit); DebugReg |] + Operands = [| Reg(64, OprRegType.RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11210,7 +11217,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg(Sz32, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11221,7 +11228,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg(Sz64, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11232,7 +11239,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| CtrlReg; Reg(Sz64, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11245,7 +11252,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg(Sz32, OprRegType.RMBit) |] + Operands = [| DebugReg; Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11256,7 +11263,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg(Sz64, OprRegType.RMBit) |] + Operands = [| DebugReg; Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11277,7 +11284,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11288,7 +11295,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11301,7 +11308,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11312,7 +11319,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11325,7 +11332,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); MM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11336,7 +11343,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); MM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11347,7 +11354,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11358,7 +11365,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11369,7 +11376,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11380,7 +11387,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11393,7 +11400,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11404,7 +11411,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11417,7 +11424,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM Sz128 |] + Operands = [| MMXReg; RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11428,7 +11435,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] + Operands = [| MMXReg; RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11439,7 +11446,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11450,7 +11457,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11461,7 +11468,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11472,7 +11479,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11485,7 +11492,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM Sz128 |] + Operands = [| MMXReg; RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11496,7 +11503,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(Sz128, Sz64) |] + Operands = [| MMXReg; RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11507,7 +11514,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11518,7 +11525,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11529,7 +11536,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11540,7 +11547,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11553,7 +11560,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11564,7 +11572,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11577,7 +11586,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11588,7 +11598,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11798,7 +11809,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11809,7 +11820,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11820,7 +11831,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11833,7 +11844,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11844,7 +11855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11855,7 +11866,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11868,7 +11879,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11879,7 +11890,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11890,7 +11901,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11901,7 +11912,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11912,7 +11923,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11923,7 +11934,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11934,7 +11945,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11945,7 +11956,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11956,7 +11967,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11969,7 +11980,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11980,7 +11991,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11991,7 +12002,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12002,7 +12013,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12013,7 +12024,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12024,7 +12035,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12035,7 +12046,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12046,7 +12057,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12057,7 +12068,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12070,7 +12081,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12081,7 +12092,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12092,7 +12103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12103,7 +12114,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12114,7 +12125,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12125,7 +12136,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12138,7 +12149,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12149,7 +12160,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12160,7 +12171,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12171,7 +12182,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12182,7 +12193,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12193,7 +12204,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12206,7 +12217,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12217,7 +12228,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12228,7 +12239,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12239,7 +12250,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12250,7 +12261,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12261,7 +12272,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12274,7 +12285,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12285,7 +12296,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12296,7 +12307,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12307,7 +12318,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12318,7 +12329,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12329,7 +12340,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12342,7 +12353,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12353,7 +12364,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12364,7 +12375,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12377,7 +12388,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12388,7 +12399,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12399,7 +12410,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12412,7 +12423,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12423,7 +12434,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12434,7 +12445,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12445,7 +12456,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12456,7 +12467,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12467,7 +12478,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12480,7 +12491,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12491,7 +12502,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12502,7 +12513,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12513,7 +12524,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12524,7 +12535,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12535,7 +12546,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12548,7 +12559,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12559,7 +12570,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12570,7 +12581,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12581,7 +12592,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12592,7 +12603,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12603,7 +12614,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12616,7 +12627,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12627,7 +12638,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12638,7 +12649,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12649,7 +12660,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12660,7 +12671,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12671,7 +12682,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12684,7 +12695,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12695,7 +12706,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12706,7 +12717,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12717,7 +12728,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12728,7 +12739,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12739,7 +12750,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12752,7 +12763,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12763,7 +12774,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12774,7 +12785,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NA @@ -12785,7 +12796,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12796,7 +12807,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12807,7 +12818,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12820,8 +12831,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12832,8 +12843,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12846,7 +12857,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12857,7 +12868,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12868,7 +12879,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12879,7 +12891,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12892,7 +12905,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12903,7 +12916,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12916,7 +12930,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12927,7 +12941,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12940,7 +12955,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12951,7 +12966,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12964,7 +12979,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12975,7 +12990,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12988,7 +13003,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12999,7 +13014,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13012,7 +13027,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13023,7 +13038,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13036,7 +13051,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13047,7 +13062,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13058,7 +13073,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13069,7 +13085,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13082,7 +13099,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13093,7 +13110,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13104,7 +13121,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13115,7 +13133,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13128,7 +13147,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13139,7 +13158,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13150,7 +13170,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13161,7 +13182,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13174,7 +13196,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13185,7 +13207,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13196,7 +13218,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13209,7 +13231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13220,7 +13242,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13231,7 +13253,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13242,7 +13265,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13255,7 +13279,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13266,7 +13290,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13277,7 +13301,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13288,7 +13313,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13301,7 +13327,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13312,7 +13338,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13323,7 +13349,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13334,7 +13361,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13347,7 +13375,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13358,7 +13386,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13369,7 +13397,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13380,7 +13409,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13393,7 +13423,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz32 |] + Operands = [| MMXReg; MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13404,7 +13434,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13417,7 +13447,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz32 |] + Operands = [| MMXReg; MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13428,7 +13458,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13441,7 +13471,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz32 |] + Operands = [| MMXReg; MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13452,7 +13482,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13465,7 +13495,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13476,7 +13506,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13489,7 +13519,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13500,7 +13530,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13513,7 +13543,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13524,7 +13554,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13537,7 +13567,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13548,7 +13578,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13561,7 +13591,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13572,7 +13602,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13585,7 +13615,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13596,7 +13626,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13609,7 +13639,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13620,7 +13650,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13633,7 +13663,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13644,7 +13674,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13657,7 +13687,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13668,7 +13698,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13681,7 +13711,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13694,7 +13724,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13707,7 +13737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM Sz32 |] + Operands = [| MMXReg; RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13718,7 +13748,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM Sz64 |] + Operands = [| MMXReg; RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13729,7 +13759,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13740,7 +13770,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13753,7 +13783,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13764,7 +13794,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13775,7 +13805,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13788,7 +13818,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13799,7 +13829,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13810,7 +13840,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13821,7 +13851,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64; Imm Sz8 |] + Operands = [| MMXReg; MM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13834,7 +13864,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13845,7 +13875,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13856,7 +13886,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13867,7 +13897,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13878,7 +13908,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13889,7 +13919,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13902,7 +13932,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13913,7 +13943,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13924,7 +13954,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13935,7 +13965,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13946,7 +13976,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13957,7 +13987,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13970,7 +14000,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13981,7 +14011,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13992,7 +14022,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14003,7 +14033,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14014,7 +14044,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm Sz8 |] + Operands = [| MMXReg; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14025,7 +14055,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit); Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14038,7 +14068,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14049,7 +14079,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14062,7 +14092,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14073,7 +14103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14086,7 +14116,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14097,7 +14127,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14131,7 +14161,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14142,7 +14172,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14155,7 +14185,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14166,7 +14196,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14179,7 +14209,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; MMXReg |] + Operands = [| RM 32; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14190,7 +14220,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; MMXReg |] + Operands = [| RM 64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -14201,7 +14231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14212,7 +14242,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -14223,7 +14253,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14236,7 +14267,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14247,7 +14278,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14258,7 +14289,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MM Sz64; MMXReg |] + Operands = [| MM 64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14271,7 +14302,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14282,7 +14313,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14295,7 +14326,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14306,7 +14337,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14319,7 +14350,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14330,7 +14361,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14341,7 +14372,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14352,7 +14383,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14363,7 +14394,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14374,7 +14405,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14387,7 +14418,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14398,7 +14429,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14409,7 +14440,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14420,7 +14451,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14431,7 +14462,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14442,7 +14473,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14455,7 +14486,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14466,7 +14497,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14477,7 +14508,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14488,7 +14519,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14499,7 +14530,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14510,7 +14541,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14523,7 +14554,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14534,7 +14565,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14545,7 +14576,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14556,7 +14587,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14569,7 +14600,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14580,7 +14611,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14591,7 +14622,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14602,7 +14633,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14615,7 +14646,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14626,7 +14657,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14637,7 +14668,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14648,7 +14679,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14661,7 +14692,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14672,7 +14703,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14685,7 +14716,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14696,7 +14727,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14709,7 +14740,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14720,7 +14751,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14731,7 +14762,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14742,7 +14773,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14755,7 +14786,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14766,7 +14797,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14777,7 +14808,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14788,7 +14819,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14801,7 +14832,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14812,7 +14843,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14823,7 +14854,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14834,7 +14865,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14847,7 +14878,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14858,7 +14889,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14869,7 +14900,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14880,7 +14911,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14893,7 +14924,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14904,7 +14935,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14915,7 +14946,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14926,7 +14957,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14939,7 +14970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14950,7 +14981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14961,7 +14992,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz16 |] + Operands = [| Rel 16 |] OpEn = OpEn.D Mode64 = Mode64.NS Compat = CompatLegMode.Valid @@ -14972,7 +15003,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Rel Sz32 |] + Operands = [| Rel 32 |] OpEn = OpEn.D Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14985,7 +15016,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14998,7 +15029,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15011,7 +15042,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15022,7 +15053,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15033,7 +15064,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15046,7 +15077,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15057,7 +15088,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15068,7 +15099,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15081,7 +15112,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15092,7 +15123,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15105,7 +15136,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15116,7 +15147,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15129,7 +15160,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15140,7 +15171,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15153,7 +15184,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15164,7 +15195,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15177,7 +15208,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15190,7 +15221,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15203,7 +15234,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15214,7 +15245,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15227,7 +15258,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15238,7 +15269,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15251,7 +15282,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15262,7 +15293,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15275,7 +15306,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15286,7 +15317,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15299,7 +15330,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15310,7 +15341,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15323,7 +15354,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15334,7 +15365,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RM Sz8 |] + Operands = [| RM 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15408,7 +15439,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15419,7 +15450,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15430,7 +15461,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15443,7 +15474,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15454,7 +15485,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15465,7 +15496,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15478,8 +15509,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16 - Reg(Sz16, OprRegType.RegBit) + Operands = [| RM 16 + Reg(16, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15491,8 +15522,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32 - Reg(Sz32, OprRegType.RegBit) + Operands = [| RM 32 + Reg(32, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15504,8 +15535,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64 - Reg(Sz64, OprRegType.RegBit) + Operands = [| RM 64 + Reg(64, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15584,7 +15615,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15595,7 +15626,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15606,7 +15637,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15619,7 +15650,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15630,7 +15661,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15641,7 +15672,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15654,8 +15685,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16 - Reg(Sz16, OprRegType.RegBit) + Operands = [| RM 16 + Reg(16, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15667,8 +15698,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32 - Reg(Sz32, OprRegType.RegBit) + Operands = [| RM 32 + Reg(32, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15680,8 +15711,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64 - Reg(Sz64, OprRegType.RegBit) + Operands = [| RM 64 + Reg(64, OprRegType.RegBit) FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid @@ -15695,7 +15726,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15706,7 +15737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15717,7 +15748,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15728,7 +15759,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem Sz8 |] + Operands = [| Mem 8 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15739,7 +15770,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15750,7 +15781,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15761,7 +15792,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15772,7 +15803,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15783,7 +15814,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15794,7 +15825,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -15805,7 +15836,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15838,7 +15869,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64 |] + Operands = [| RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -15849,7 +15880,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32 |] + Operands = [| RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15860,7 +15891,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15871,7 +15902,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15882,7 +15913,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15893,7 +15924,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15915,7 +15946,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15926,7 +15957,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15948,7 +15979,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15959,7 +15990,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15970,7 +16001,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15981,7 +16012,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15992,7 +16023,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -16003,7 +16034,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16014,7 +16045,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16025,7 +16056,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16036,7 +16067,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16047,7 +16078,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16058,7 +16089,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16071,7 +16102,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16082,7 +16113,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16093,7 +16124,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16106,7 +16137,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16119,7 +16150,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16130,7 +16161,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16141,7 +16172,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16154,7 +16185,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16165,7 +16196,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16176,7 +16207,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16189,7 +16220,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16200,7 +16231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16211,7 +16242,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16224,7 +16255,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16235,7 +16266,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16246,7 +16277,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16259,7 +16290,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16270,7 +16301,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz48 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16281,7 +16312,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz80 |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16294,7 +16325,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16305,7 +16336,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16316,7 +16347,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16329,7 +16360,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16340,7 +16371,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16353,7 +16384,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16364,7 +16395,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16375,7 +16406,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16388,7 +16419,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16401,7 +16432,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16412,7 +16443,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16423,7 +16454,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16434,7 +16465,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16445,7 +16476,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16456,7 +16487,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16467,7 +16498,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16478,7 +16509,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16489,7 +16520,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16500,7 +16531,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz16; Imm Sz8 |] + Operands = [| RM 16; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16511,7 +16542,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz32; Imm Sz8 |] + Operands = [| RM 32; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16522,7 +16553,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| RM Sz64; Imm Sz8 |] + Operands = [| RM 64; Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16535,7 +16566,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16546,7 +16577,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16557,7 +16588,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16570,7 +16601,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16581,7 +16612,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16592,7 +16623,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16603,7 +16634,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16614,7 +16645,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16625,7 +16656,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16638,7 +16669,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16649,7 +16680,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16660,7 +16691,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16671,7 +16702,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16682,7 +16713,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16693,7 +16724,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16706,7 +16737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(16, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16717,7 +16748,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16728,7 +16759,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16741,7 +16772,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16752,7 +16783,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16765,7 +16796,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz8; Reg(Sz8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16778,7 +16809,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16789,7 +16820,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16800,7 +16831,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16813,7 +16844,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16824,7 +16855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16835,9 +16866,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16848,9 +16879,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16863,7 +16894,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16874,7 +16905,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16887,7 +16918,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(Sz32, Sz16); Imm Sz8 |] + Operands = [| MMXReg; RMdiff(32, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16898,9 +16929,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz32, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(32, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16913,7 +16944,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); MMXReg; Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); MMXReg; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16924,9 +16955,9 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16939,7 +16970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16950,7 +16981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16963,7 +16994,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Mem Sz64 |] + Operands = [| Mem 64 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16974,7 +17005,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Mem Sz128 |] + Operands = [| Mem 128 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16985,7 +17016,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -16996,7 +17027,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -17007,7 +17038,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz16, OprRegType.RMBit) |] + Operands = [| Reg(16, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17018,7 +17049,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17029,7 +17060,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17040,7 +17071,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz16, OprRegType.RMBit) |] + Operands = [| Reg(16, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17051,7 +17082,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17062,7 +17093,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(64, OprRegType.RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17073,7 +17104,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Reg(32, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -17084,7 +17115,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17095,7 +17126,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -17106,7 +17137,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17117,7 +17148,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -17128,7 +17159,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17139,7 +17170,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| Mem SzUnknown |] + Operands = [| Mem 0 |] OpEn = OpEn.M Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -17152,7 +17183,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17163,7 +17194,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17176,7 +17207,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17187,7 +17218,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17200,7 +17231,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17211,7 +17242,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17224,7 +17255,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17235,7 +17266,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17248,7 +17279,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17259,7 +17290,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17272,7 +17303,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17283,7 +17314,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17296,7 +17327,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17307,7 +17338,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17320,7 +17351,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.OpRd) |] + Operands = [| Reg(32, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17331,7 +17362,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz64, OprRegType.OpRd) |] + Operands = [| Reg(64, OprRegType.OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17344,7 +17375,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17355,7 +17386,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17368,7 +17399,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17379,7 +17410,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17392,7 +17423,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17403,7 +17434,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17416,7 +17447,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17427,7 +17458,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17440,7 +17471,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17451,7 +17482,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17464,7 +17495,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17475,7 +17506,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17488,7 +17519,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; Reg(Sz128, OprRegType.RMBit) |] + Operands = [| MMXReg; Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17499,7 +17530,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17510,7 +17542,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); MMXReg |] + Operands = [| Reg(128, OprRegType.RegBit); MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17523,7 +17555,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); MMXReg |] + Operands = [| Reg(32, OprRegType.RegBit); MMXReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17534,8 +17566,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17548,7 +17580,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17559,7 +17591,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17572,7 +17604,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17583,7 +17615,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17596,7 +17628,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17607,7 +17639,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17620,7 +17652,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17631,7 +17663,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17644,7 +17676,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17655,7 +17687,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17668,7 +17700,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17679,7 +17711,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17692,7 +17724,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17703,7 +17735,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17716,7 +17748,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17727,7 +17759,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17740,7 +17772,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17751,7 +17783,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17764,7 +17796,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17775,7 +17807,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17788,7 +17820,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17799,7 +17831,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17812,7 +17844,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17823,7 +17855,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17836,7 +17868,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17847,7 +17879,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17860,7 +17892,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17871,7 +17903,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17884,7 +17916,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17895,7 +17928,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17906,7 +17939,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17919,7 +17952,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17930,7 +17963,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; MMXReg |] + Operands = [| Mem 64; MMXReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17943,7 +17976,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17954,7 +17987,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17967,7 +18000,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17978,7 +18011,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17991,7 +18024,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18002,7 +18035,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18015,7 +18048,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18026,7 +18059,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18039,7 +18072,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18050,7 +18083,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18063,7 +18096,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18074,7 +18107,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18087,7 +18120,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18098,7 +18131,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18111,7 +18144,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18122,7 +18155,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18135,7 +18168,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18148,7 +18181,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18159,7 +18192,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18172,7 +18205,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18183,7 +18216,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18196,7 +18229,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18207,7 +18240,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18220,7 +18253,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18231,7 +18264,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18244,7 +18277,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18255,7 +18288,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18268,7 +18301,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18279,7 +18312,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18292,8 +18325,8 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18317,7 +18350,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18328,7 +18361,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18341,7 +18374,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18352,7 +18385,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18365,7 +18398,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18376,7 +18409,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18389,7 +18422,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18400,7 +18433,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18413,7 +18446,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18424,7 +18457,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18437,7 +18470,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18448,7 +18481,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18461,7 +18494,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18472,7 +18505,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18485,7 +18518,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18502,7 +18535,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18513,7 +18546,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18526,7 +18559,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18537,7 +18570,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18550,7 +18583,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18561,7 +18594,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18574,7 +18607,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18585,7 +18618,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18598,7 +18631,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18609,7 +18642,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18622,7 +18655,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18633,7 +18666,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18646,7 +18679,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18657,7 +18690,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18670,7 +18703,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18681,7 +18714,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18694,7 +18727,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18705,7 +18738,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18718,7 +18751,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18729,7 +18762,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18742,7 +18775,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18753,7 +18786,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18766,7 +18799,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18777,7 +18810,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18798,7 +18831,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18817,7 +18850,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18830,7 +18863,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18845,7 +18878,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18866,7 +18899,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18877,7 +18910,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18890,7 +18923,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18901,7 +18934,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18914,7 +18947,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64 |] + Operands = [| MMXReg; MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18925,7 +18958,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18940,7 +18973,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18953,7 +18987,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18966,7 +19001,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18979,7 +19015,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18992,7 +19029,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19005,7 +19043,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19022,7 +19061,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19035,7 +19074,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19048,7 +19087,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19061,7 +19100,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19082,7 +19121,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19095,7 +19135,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19108,7 +19149,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19121,7 +19163,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19134,7 +19177,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19147,7 +19191,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19162,7 +19207,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19175,7 +19220,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19188,7 +19233,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19201,7 +19246,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19214,7 +19259,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19227,7 +19272,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19240,7 +19285,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19253,7 +19298,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19266,7 +19311,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19279,7 +19324,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19292,7 +19337,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19433,7 +19478,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -19444,7 +19489,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19595,7 +19640,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19608,7 +19653,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19621,7 +19666,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19634,7 +19679,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19647,7 +19692,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19660,7 +19705,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19675,7 +19720,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19704,7 +19749,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz384 |] + Operands = [| Mem 384 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19715,7 +19760,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512 |] + Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19726,7 +19771,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz384 |] + Operands = [| Mem 384 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19737,7 +19782,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512 |] + Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19754,7 +19799,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19767,7 +19812,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19778,7 +19823,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz384 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19789,8 +19834,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19803,7 +19848,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz384 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19814,7 +19859,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19827,7 +19872,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19838,7 +19883,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz512 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19851,7 +19896,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz512 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19862,7 +19907,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19907,7 +19952,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19918,7 +19963,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz8 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19929,7 +19974,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz16, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(16, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19940,7 +19985,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19951,7 +19996,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19964,7 +20009,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz16 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19975,7 +20020,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19986,7 +20031,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19997,7 +20042,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz16; Reg(Sz16, OprRegType.RegBit) |] + Operands = [| Mem 16; Reg(16, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20008,7 +20053,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20019,7 +20064,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20038,7 +20083,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20049,7 +20094,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20062,7 +20107,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20073,7 +20118,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20084,7 +20129,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20095,7 +20140,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20106,7 +20151,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20117,7 +20162,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20132,7 +20177,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RegAddr; Mem Sz512 |] + Operands = [| RegAddr; Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20143,7 +20188,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| RegAddr; Mem Sz512 |] + Operands = [| RegAddr; Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20154,7 +20199,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RegAddr; Mem Sz512 |] + Operands = [| RegAddr; Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20167,7 +20212,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg(Sz32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20178,7 +20223,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20191,8 +20236,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20205,8 +20250,8 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20247,7 +20292,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20260,7 +20305,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20273,9 +20318,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20288,9 +20333,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20303,7 +20348,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20316,7 +20361,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20329,7 +20374,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20342,7 +20387,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM Sz64; Imm Sz8 |] + Operands = [| MMXReg; MM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20353,7 +20398,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20374,9 +20419,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 8) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20389,9 +20434,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 16) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20404,7 +20449,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20415,7 +20460,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20428,7 +20473,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20457,9 +20502,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz32, Sz8) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(32, 8) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20472,9 +20517,9 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20487,7 +20532,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20498,7 +20543,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -20569,7 +20614,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20582,7 +20627,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20595,7 +20640,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20610,7 +20655,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20677,7 +20722,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20690,7 +20735,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20703,7 +20748,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20716,7 +20761,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20937,7 +20982,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20952,7 +20997,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20965,7 +21010,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21008,7 +21053,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21053,7 +21098,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.FixedModRM 0xC0uy - Operands = [| Imm Sz8 |] + Operands = [| Imm 8 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21132,9 +21177,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21145,7 +21190,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21156,9 +21201,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21169,7 +21214,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21180,7 +21225,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21191,7 +21236,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21202,7 +21247,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21213,7 +21258,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21226,9 +21271,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21239,7 +21284,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21250,9 +21295,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21263,7 +21308,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21274,7 +21319,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21285,7 +21330,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21296,7 +21341,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21307,7 +21352,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21320,7 +21365,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21331,7 +21377,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21342,9 +21388,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21355,9 +21401,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.B Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21368,9 +21414,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21381,7 +21427,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21392,7 +21438,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21405,7 +21451,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21416,7 +21462,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21429,9 +21475,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21442,9 +21488,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21455,9 +21501,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21468,9 +21514,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21483,9 +21529,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21496,9 +21542,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21509,9 +21555,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21522,9 +21568,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21537,9 +21583,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21550,9 +21596,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21563,9 +21609,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21576,7 +21622,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21587,7 +21633,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21600,7 +21646,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21611,7 +21657,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21656,7 +21702,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21667,7 +21713,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21678,7 +21724,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21689,7 +21735,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21702,7 +21748,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21713,7 +21759,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21724,7 +21770,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21735,7 +21781,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21748,9 +21794,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21761,9 +21807,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21774,9 +21820,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21787,9 +21833,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21802,7 +21848,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21813,7 +21859,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21824,7 +21870,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21835,7 +21881,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21848,7 +21894,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21859,7 +21905,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21870,7 +21916,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21881,7 +21927,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21894,7 +21940,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21905,7 +21951,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21916,7 +21962,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21927,7 +21973,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21940,7 +21986,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21951,7 +21998,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21964,7 +22012,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21975,7 +22024,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22393,8 +22443,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22405,8 +22455,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22417,8 +22467,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22429,8 +22479,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22443,7 +22493,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22454,7 +22504,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22465,7 +22515,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22476,7 +22526,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22487,9 +22537,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22500,9 +22550,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22515,7 +22565,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22526,7 +22576,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22537,9 +22587,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22552,7 +22602,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22563,7 +22613,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22574,9 +22624,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22589,9 +22639,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22602,9 +22652,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22615,9 +22665,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22628,9 +22678,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22643,9 +22693,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22656,9 +22706,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22669,9 +22719,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22682,9 +22732,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22697,9 +22747,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22710,9 +22760,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22723,9 +22773,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22736,9 +22786,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22751,9 +22801,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22764,9 +22814,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22777,9 +22827,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22790,9 +22840,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22805,9 +22855,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22818,9 +22868,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22831,9 +22881,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22844,9 +22894,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22857,9 +22907,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22870,9 +22920,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22885,9 +22935,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22898,9 +22948,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22911,9 +22961,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22924,9 +22974,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22937,9 +22987,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22950,9 +23000,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22965,7 +23015,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22976,7 +23026,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22987,7 +23037,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22998,7 +23049,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23009,9 +23060,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23022,9 +23073,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23037,7 +23088,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23048,7 +23099,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23059,7 +23110,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23070,7 +23121,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23081,7 +23132,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23092,7 +23143,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23105,9 +23156,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23118,9 +23169,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23131,9 +23182,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23144,9 +23195,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23157,9 +23208,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23170,9 +23221,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23185,9 +23236,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23198,9 +23249,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23211,9 +23262,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23224,9 +23275,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23237,9 +23288,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23250,9 +23301,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23265,9 +23316,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23278,9 +23329,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23291,9 +23342,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23304,9 +23355,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23317,9 +23368,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23330,9 +23381,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23345,9 +23396,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23358,9 +23409,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23371,9 +23422,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23384,9 +23435,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23397,9 +23448,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23410,9 +23461,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23425,9 +23476,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23438,9 +23489,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23453,9 +23504,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23466,9 +23517,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23481,9 +23532,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23494,9 +23545,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23509,9 +23560,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23522,9 +23573,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23537,9 +23588,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23550,9 +23601,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23565,9 +23616,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23578,9 +23629,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23593,9 +23644,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23606,9 +23657,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23621,9 +23672,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23634,9 +23685,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23649,9 +23700,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23662,9 +23713,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23677,9 +23728,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23690,9 +23741,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23705,9 +23756,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23718,9 +23769,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23733,9 +23784,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23746,9 +23797,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23761,9 +23812,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23774,9 +23825,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23789,9 +23840,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23802,9 +23853,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23817,7 +23868,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23828,7 +23879,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -23841,7 +23892,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23852,7 +23903,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23863,7 +23914,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23874,7 +23925,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23887,7 +23938,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23898,7 +23949,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23909,7 +23960,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23920,7 +23971,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23931,7 +23982,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23942,7 +23993,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23955,9 +24006,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23968,9 +24019,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23981,9 +24032,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23994,9 +24045,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24007,9 +24058,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24020,9 +24071,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24035,9 +24086,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24048,9 +24099,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24061,9 +24112,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24074,9 +24125,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24087,9 +24138,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24100,9 +24151,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24115,9 +24166,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24128,9 +24179,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24141,9 +24192,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24154,9 +24205,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24167,9 +24218,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24180,9 +24231,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24193,9 +24244,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24206,9 +24257,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24221,9 +24272,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24234,9 +24285,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24249,9 +24300,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24262,9 +24313,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24277,9 +24328,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24290,9 +24341,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24337,9 +24388,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24350,9 +24401,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24363,9 +24414,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24376,9 +24427,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24391,9 +24442,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24404,9 +24455,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24417,9 +24468,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24430,9 +24481,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24445,7 +24496,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24456,7 +24507,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -24467,7 +24518,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24480,7 +24532,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24491,7 +24543,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24502,7 +24554,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24513,7 +24565,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24558,7 +24610,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM Sz16 |] + Operands = [| OpMaskReg; KM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24569,7 +24621,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM Sz8 |] + Operands = [| OpMaskReg; KM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24580,7 +24632,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM Sz64 |] + Operands = [| OpMaskReg; KM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24591,7 +24643,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM Sz32 |] + Operands = [| OpMaskReg; KM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24604,7 +24656,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz16; OpMaskReg |] + Operands = [| Mem 16; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24615,7 +24667,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz8; OpMaskReg |] + Operands = [| Mem 8; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24626,7 +24678,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; OpMaskReg |] + Operands = [| Mem 64; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24637,7 +24689,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; OpMaskReg |] + Operands = [| Mem 32; OpMaskReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24650,7 +24702,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24661,7 +24713,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24672,7 +24724,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz64, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24683,7 +24735,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24696,7 +24748,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24707,7 +24759,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24718,7 +24770,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(64, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24729,7 +24781,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24882,7 +24934,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24893,7 +24945,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Mem Sz32 |] + Operands = [| Mem 32 |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24944,10 +24996,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24958,10 +25010,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24972,10 +25024,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24986,10 +25038,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25000,10 +25052,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25014,10 +25066,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25032,10 +25084,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz32, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(32, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25048,9 +25100,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25063,10 +25115,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25077,10 +25129,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25091,10 +25143,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25105,10 +25157,10 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25139,9 +25191,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25152,9 +25204,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25165,9 +25217,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25178,9 +25230,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25193,9 +25245,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25206,9 +25258,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25221,9 +25273,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25234,9 +25286,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25249,9 +25301,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25262,9 +25314,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25277,9 +25329,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25290,9 +25342,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25305,9 +25357,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25318,9 +25370,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25333,7 +25385,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25346,8 +25399,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25358,8 +25411,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25372,9 +25425,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25385,9 +25438,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25400,9 +25453,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25413,9 +25466,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25428,9 +25481,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25441,9 +25494,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25456,9 +25509,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25469,9 +25522,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25484,9 +25537,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25497,9 +25550,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25512,9 +25565,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25525,9 +25578,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25540,9 +25593,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25553,9 +25606,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25568,9 +25621,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25581,9 +25634,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25596,9 +25649,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25609,9 +25662,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25624,9 +25677,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25637,9 +25690,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25652,9 +25705,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25665,9 +25718,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25680,9 +25733,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25693,9 +25746,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25708,9 +25761,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25721,9 +25774,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25736,9 +25789,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25749,9 +25802,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25764,7 +25817,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25775,7 +25829,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25786,7 +25840,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25797,7 +25851,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25808,7 +25862,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25819,7 +25873,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25832,7 +25886,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25843,7 +25897,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25856,9 +25910,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25869,9 +25923,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25884,9 +25938,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25897,9 +25951,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25912,9 +25966,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25925,9 +25979,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25940,9 +25994,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25953,9 +26007,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25968,9 +26022,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25981,9 +26035,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25996,9 +26050,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26009,9 +26063,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26024,9 +26078,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26037,9 +26091,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26052,9 +26106,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26065,9 +26119,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26080,7 +26134,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26091,7 +26145,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26104,9 +26158,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26117,9 +26171,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26132,9 +26186,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26145,9 +26199,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26160,9 +26214,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26173,9 +26227,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26188,9 +26242,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26201,9 +26255,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26216,9 +26270,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26229,9 +26283,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26244,9 +26298,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26257,9 +26311,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26272,8 +26326,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26286,9 +26340,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26299,9 +26353,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26314,9 +26368,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26327,9 +26381,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26342,9 +26396,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26355,9 +26409,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26370,9 +26424,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26383,9 +26437,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26398,9 +26452,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26411,9 +26465,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26426,9 +26480,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26439,9 +26493,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26454,9 +26508,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26467,9 +26521,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26488,9 +26542,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26501,9 +26555,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26516,9 +26570,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26529,9 +26583,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26544,9 +26598,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26557,9 +26611,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26572,9 +26626,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26585,9 +26639,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26600,9 +26654,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26613,9 +26667,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26628,9 +26682,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26641,9 +26695,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26656,9 +26710,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26669,9 +26723,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26684,9 +26738,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26697,9 +26751,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26712,9 +26766,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26725,9 +26779,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26740,9 +26794,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26753,9 +26807,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26768,9 +26822,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26781,9 +26835,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26796,9 +26850,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26809,9 +26863,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26824,9 +26878,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26837,9 +26891,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26852,9 +26906,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26865,9 +26919,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26880,7 +26934,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26891,7 +26945,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26904,7 +26958,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26915,7 +26969,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26934,7 +26988,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26945,7 +27000,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26962,9 +27017,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26977,7 +27032,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26988,7 +27043,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27001,7 +27056,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27012,7 +27067,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27023,8 +27078,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27035,8 +27090,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27049,7 +27104,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27060,8 +27115,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27074,7 +27129,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27089,7 +27144,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27100,7 +27155,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27113,7 +27168,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27124,7 +27179,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27137,7 +27192,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27148,7 +27203,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27163,7 +27218,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27174,7 +27230,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27187,7 +27243,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27198,7 +27255,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27211,7 +27269,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27222,7 +27281,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27235,7 +27295,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27246,7 +27307,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27259,7 +27320,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27270,7 +27332,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27283,7 +27346,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27294,7 +27358,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27311,9 +27375,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27324,9 +27388,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27339,9 +27403,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27352,9 +27416,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27367,7 +27431,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27378,7 +27442,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27391,9 +27455,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27404,9 +27468,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27419,9 +27483,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27432,9 +27496,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27447,9 +27511,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27460,9 +27524,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27475,9 +27539,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128 - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128 + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27488,9 +27552,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256 - Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256 + Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27503,9 +27567,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128 - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128 + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27516,9 +27580,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256 - Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256 + Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27531,7 +27595,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27542,7 +27607,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27555,7 +27620,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27566,7 +27632,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27579,7 +27646,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27590,7 +27658,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27603,7 +27672,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27614,7 +27684,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27627,7 +27697,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27638,7 +27709,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27651,7 +27723,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27662,7 +27735,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27675,9 +27748,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27690,9 +27763,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27703,9 +27776,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27718,9 +27791,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27731,9 +27804,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27746,9 +27819,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27759,9 +27832,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27774,9 +27847,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27787,9 +27860,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27802,9 +27875,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27815,9 +27888,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27830,9 +27903,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27843,9 +27916,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27858,9 +27931,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27871,9 +27944,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27886,9 +27959,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27899,9 +27972,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27914,9 +27987,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27927,9 +28000,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27942,9 +28015,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27955,9 +28028,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27970,7 +28043,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27989,9 +28062,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28002,9 +28075,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28015,9 +28088,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28028,9 +28101,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28043,9 +28116,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28056,9 +28129,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28071,9 +28144,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28084,9 +28157,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28097,9 +28170,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28110,9 +28183,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28127,7 +28200,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512 |] + Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28138,7 +28211,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz512 |] + Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28160,7 +28233,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) |] + Operands = [| Reg(1024, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28175,7 +28248,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(1024, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28186,7 +28259,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit); Mem SzUnknown |] + Operands = [| Reg(1024, OprRegType.RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28197,7 +28270,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem SzUnknown; Reg(Sz1024, OprRegType.RegBit) |] + Operands = [| Mem 0; Reg(1024, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28218,9 +28291,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28231,9 +28304,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28244,9 +28317,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28257,9 +28330,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28270,9 +28343,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28283,9 +28356,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28296,9 +28369,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28309,9 +28382,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28324,9 +28397,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28337,9 +28410,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28350,9 +28423,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28363,9 +28436,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28376,9 +28449,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28389,9 +28462,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28402,9 +28475,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28415,9 +28488,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28430,9 +28503,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28443,9 +28516,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28458,9 +28531,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28471,9 +28544,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28494,7 +28567,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28505,7 +28579,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28518,7 +28593,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28529,7 +28605,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28542,7 +28619,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28557,9 +28634,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28570,9 +28647,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28587,9 +28664,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28600,9 +28677,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28613,9 +28690,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28626,9 +28703,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz1024, OprRegType.RegBit) - Reg(Sz1024, OprRegType.RMBit) - Reg(Sz1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, OprRegType.RegBit) + Reg(1024, OprRegType.RMBit) + Reg(1024, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28679,7 +28756,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28690,7 +28767,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28713,7 +28790,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] + Operands = [| Reg(128, OprRegType.RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28724,7 +28801,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] + Operands = [| Reg(256, OprRegType.RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28737,7 +28814,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28748,7 +28826,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28797,9 +28876,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28810,9 +28889,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28823,9 +28902,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28836,9 +28915,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28853,9 +28932,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128 - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128 + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28866,9 +28945,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256 - Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256 + Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28879,9 +28958,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128 - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128 + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28892,9 +28971,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256 - Reg(Sz256, OprRegType.VVVV) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256 + Reg(256, OprRegType.VVVV) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28909,9 +28988,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 32 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28922,9 +29001,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 32 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28935,9 +29014,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 32 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28948,9 +29027,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 32 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28963,9 +29042,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28976,9 +29055,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28989,9 +29068,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29002,9 +29081,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 64 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29017,9 +29096,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 32 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29030,9 +29109,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 32 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29043,9 +29122,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 32 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29056,9 +29135,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz32 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 32 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29071,9 +29150,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29084,9 +29163,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz256, OprRegType.VVVV) |] + Operands = [| Reg(256, OprRegType.RegBit) + MemVSIB 64 + Reg(256, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29097,9 +29176,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29110,9 +29189,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - MemVSIB Sz64 - Reg(Sz128, OprRegType.VVVV) |] + Operands = [| Reg(128, OprRegType.RegBit) + MemVSIB 64 + Reg(128, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29129,9 +29208,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29142,9 +29221,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29155,9 +29234,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29168,9 +29247,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29183,9 +29262,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29196,9 +29275,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29209,9 +29288,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29222,9 +29301,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29237,9 +29316,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29250,9 +29329,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29263,9 +29342,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29276,9 +29355,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29291,9 +29370,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29304,9 +29383,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29319,9 +29398,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29332,9 +29411,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29345,9 +29424,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29358,9 +29437,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29373,9 +29452,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29386,9 +29465,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29401,9 +29480,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29414,9 +29493,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29427,9 +29506,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29440,9 +29519,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29455,9 +29534,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29468,9 +29547,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29483,9 +29562,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29496,9 +29575,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29509,9 +29588,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29522,9 +29601,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29537,9 +29616,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29550,9 +29629,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29577,9 +29656,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29590,9 +29669,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29603,9 +29682,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29616,9 +29695,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29631,9 +29710,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29644,9 +29723,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29657,9 +29736,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29670,9 +29749,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29685,9 +29764,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29698,9 +29777,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29711,9 +29790,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29724,9 +29803,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29739,9 +29818,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29752,9 +29831,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29767,9 +29846,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29780,9 +29859,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29793,9 +29872,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29806,9 +29885,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29821,9 +29900,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29834,9 +29913,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29849,9 +29928,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29862,9 +29941,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29875,9 +29954,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29888,9 +29967,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29903,9 +29982,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29916,9 +29995,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29931,9 +30010,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29944,9 +30023,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29957,9 +30036,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29970,9 +30049,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29985,9 +30064,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29998,9 +30077,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30013,7 +30092,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30024,7 +30103,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30035,7 +30114,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30046,7 +30125,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30057,7 +30136,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30068,7 +30147,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30079,7 +30158,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30090,7 +30169,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30103,7 +30182,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30114,7 +30193,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30125,7 +30204,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30136,7 +30215,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz16 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30153,9 +30232,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30166,9 +30245,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30181,9 +30260,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30194,9 +30273,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30209,9 +30288,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30222,9 +30301,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30235,9 +30314,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30248,9 +30327,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30263,9 +30342,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30276,9 +30355,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30289,9 +30368,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30302,9 +30381,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30317,9 +30396,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30330,9 +30409,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30343,9 +30422,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30356,9 +30435,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30371,9 +30450,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30384,9 +30463,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30399,9 +30478,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30412,9 +30491,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30425,9 +30504,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30438,9 +30517,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30453,9 +30532,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30466,9 +30545,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30481,9 +30560,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30494,9 +30573,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30507,9 +30586,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30520,9 +30599,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30535,9 +30614,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30548,9 +30627,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30563,9 +30642,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30576,9 +30655,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30589,9 +30668,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30602,9 +30681,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30617,9 +30696,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30630,9 +30709,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30667,9 +30746,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30682,8 +30761,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30696,8 +30775,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30712,9 +30791,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30725,9 +30804,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30744,9 +30823,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30757,9 +30836,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30770,9 +30849,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30783,9 +30862,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30796,9 +30875,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30809,9 +30888,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30824,9 +30903,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30837,9 +30916,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30850,9 +30929,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30863,9 +30942,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30876,9 +30955,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30889,9 +30968,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30916,9 +30995,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30929,9 +31008,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30942,9 +31021,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30955,9 +31034,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30968,9 +31047,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30981,9 +31060,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30996,7 +31075,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31009,9 +31088,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31022,9 +31101,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31037,9 +31116,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31050,9 +31129,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31065,9 +31144,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31078,9 +31157,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31093,9 +31172,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31106,9 +31185,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31121,9 +31200,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31134,9 +31213,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31149,9 +31228,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31162,9 +31241,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31177,9 +31256,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31190,9 +31269,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31205,9 +31284,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31218,9 +31297,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31233,9 +31312,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31246,9 +31325,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31261,9 +31340,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31274,9 +31353,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31289,9 +31368,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31302,9 +31381,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31317,9 +31396,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31330,9 +31409,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31345,9 +31424,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31358,9 +31437,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31373,9 +31452,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31386,9 +31465,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31401,9 +31480,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31414,9 +31493,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31429,9 +31508,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31442,9 +31521,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31457,9 +31536,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31470,9 +31549,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31485,9 +31564,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31498,9 +31577,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31513,9 +31592,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31526,9 +31605,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31541,9 +31620,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz32 - Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Mem 32 + Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31554,9 +31633,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem Sz64 - Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Mem 64 + Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31573,9 +31652,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31586,9 +31665,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31601,7 +31680,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] + Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31612,7 +31691,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] + Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31623,7 +31702,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] + Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31634,7 +31713,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] + Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31645,7 +31724,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz32, OprRegType.VVVV); RM Sz32 |] + Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31656,7 +31735,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz64, OprRegType.VVVV); RM Sz64 |] + Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31671,9 +31750,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - RM Sz32 - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Reg(32, OprRegType.RegBit) + RM 32 + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31684,9 +31763,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - RM Sz64 - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Reg(64, OprRegType.RegBit) + RM 64 + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31697,9 +31776,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31710,9 +31789,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31723,9 +31802,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31736,9 +31815,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31751,9 +31830,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz32, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(32, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31764,9 +31843,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - Reg(Sz64, OprRegType.VVVV) - RM Sz64 |] + Operands = [| Reg(64, OprRegType.RegBit) + Reg(64, OprRegType.VVVV) + RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31779,9 +31858,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - RM Sz32 - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Reg(32, OprRegType.RegBit) + RM 32 + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31792,9 +31871,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - RM Sz64 - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Reg(64, OprRegType.RegBit) + RM 64 + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31805,9 +31884,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - RM Sz32 - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Reg(32, OprRegType.RegBit) + RM 32 + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31818,9 +31897,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - RM Sz32 - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Reg(32, OprRegType.RegBit) + RM 32 + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31831,9 +31910,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - RM Sz32 - Reg(Sz32, OprRegType.VVVV) |] + Operands = [| Reg(32, OprRegType.RegBit) + RM 32 + Reg(32, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31844,9 +31923,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - RM Sz64 - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Reg(64, OprRegType.RegBit) + RM 64 + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31857,9 +31936,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - RM Sz64 - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Reg(64, OprRegType.RegBit) + RM 64 + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31870,9 +31949,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit) - RM Sz64 - Reg(Sz64, OprRegType.VVVV) |] + Operands = [| Reg(64, OprRegType.RegBit) + RM 64 + Reg(64, OprRegType.VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31905,7 +31984,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31918,7 +31997,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31931,10 +32010,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31945,10 +32024,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31963,7 +32042,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31974,7 +32053,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31987,7 +32066,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31998,7 +32077,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32011,10 +32090,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32029,7 +32108,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32040,7 +32119,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32053,7 +32132,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32064,7 +32143,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32077,10 +32156,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32093,10 +32172,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32109,10 +32188,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32123,10 +32202,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32139,10 +32218,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32153,10 +32232,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32169,10 +32248,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32183,10 +32262,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32199,10 +32278,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32213,10 +32292,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32237,9 +32316,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 8) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32252,9 +32331,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 16) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32267,7 +32346,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32278,7 +32357,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -32291,7 +32370,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32304,10 +32383,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32320,7 +32399,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32339,9 +32418,9 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32352,7 +32431,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32369,10 +32448,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz32, Sz8) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(32, 8) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32385,10 +32464,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32401,10 +32480,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32415,10 +32494,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz64 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 64 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -32457,7 +32536,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32468,7 +32547,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32481,7 +32560,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32492,7 +32571,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32505,7 +32584,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32516,7 +32595,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32529,7 +32608,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32540,7 +32619,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm Sz8 |] + Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32561,10 +32640,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32577,7 +32656,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32602,10 +32681,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32616,10 +32695,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32632,10 +32711,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32648,10 +32727,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32662,10 +32741,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32680,10 +32759,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32694,10 +32773,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32712,10 +32791,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32734,10 +32813,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Reg(Sz128, OprRegType.IS4) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Reg(128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32748,10 +32827,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Reg(Sz256, OprRegType.IS4) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Reg(256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32764,10 +32843,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Reg(Sz128, OprRegType.IS4) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Reg(128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32778,10 +32857,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Reg(Sz256, OprRegType.IS4) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Reg(256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32794,10 +32873,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Reg(Sz128, OprRegType.IS4) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Reg(128, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32808,10 +32887,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Reg(Sz256, OprRegType.IS4) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Reg(256, OprRegType.IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32862,7 +32941,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32875,7 +32954,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32888,7 +32967,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32901,7 +32980,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33126,10 +33205,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33140,10 +33219,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33156,10 +33235,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33170,10 +33249,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33214,10 +33293,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33230,7 +33309,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33275,7 +33354,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RM Sz32; Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33286,7 +33365,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RM Sz64; Imm Sz8 |] + Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33365,9 +33444,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33378,7 +33457,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33389,9 +33468,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33402,7 +33481,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33413,7 +33492,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33424,7 +33503,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33435,7 +33514,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33446,7 +33525,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33457,7 +33536,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33468,7 +33547,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33481,9 +33560,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33494,7 +33573,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33505,9 +33584,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33518,7 +33597,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33529,7 +33608,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33540,7 +33619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33551,7 +33630,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33562,7 +33641,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33573,7 +33652,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33584,7 +33663,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33597,7 +33676,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33608,7 +33688,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33619,7 +33699,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33630,9 +33710,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33643,9 +33723,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33656,9 +33736,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33669,7 +33749,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33680,7 +33760,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33691,7 +33771,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33704,7 +33784,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33715,7 +33795,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33728,9 +33808,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33741,9 +33821,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33754,9 +33834,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33767,9 +33847,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33780,9 +33860,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33793,9 +33873,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33808,9 +33888,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33821,9 +33901,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33834,9 +33914,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33847,9 +33927,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33860,9 +33940,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33873,9 +33953,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33888,9 +33968,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33901,9 +33981,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33914,9 +33994,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33927,7 +34007,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33938,7 +34018,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33949,7 +34029,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33962,7 +34042,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33973,7 +34053,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34018,7 +34098,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34029,7 +34109,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34040,7 +34120,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34051,7 +34131,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34062,7 +34142,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34073,7 +34153,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34086,7 +34166,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34097,7 +34177,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34108,7 +34188,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34119,7 +34199,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34130,7 +34210,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34141,7 +34221,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34154,9 +34234,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34167,9 +34247,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz64, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -34180,9 +34260,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz32, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(32, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34193,9 +34273,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz64, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -34208,7 +34288,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34219,7 +34299,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34230,7 +34310,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34241,7 +34321,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34252,7 +34332,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34263,7 +34343,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34276,7 +34356,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34287,7 +34367,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34298,7 +34378,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34309,7 +34389,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34322,7 +34402,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34333,7 +34413,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34344,7 +34424,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34355,7 +34435,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34368,7 +34448,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34379,7 +34459,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34392,7 +34472,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34403,7 +34483,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34482,8 +34562,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34494,8 +34574,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34506,8 +34586,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34518,8 +34598,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34530,8 +34610,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34542,8 +34622,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34554,9 +34634,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34567,9 +34647,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34586,9 +34666,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34599,9 +34679,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34612,9 +34692,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34625,9 +34705,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34638,9 +34718,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34651,9 +34731,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34666,9 +34746,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34679,9 +34759,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34692,9 +34772,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34705,9 +34785,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34718,9 +34798,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34731,9 +34811,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34746,9 +34826,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34759,9 +34839,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34772,9 +34852,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34785,9 +34865,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34798,9 +34878,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34811,9 +34891,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34826,9 +34906,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34839,9 +34919,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34852,9 +34932,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34865,9 +34945,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34878,9 +34958,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34891,9 +34971,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34906,9 +34986,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34919,9 +34999,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34932,9 +35012,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34945,9 +35025,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34958,9 +35038,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34971,9 +35051,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34984,9 +35064,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34997,9 +35077,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35012,9 +35092,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35025,9 +35105,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35038,9 +35118,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35051,9 +35131,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35064,9 +35144,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35077,9 +35157,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35090,9 +35170,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35103,9 +35183,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35118,8 +35198,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35130,8 +35210,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35142,8 +35222,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35154,8 +35234,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35166,8 +35246,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35178,8 +35258,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35190,9 +35270,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35203,9 +35283,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35218,8 +35298,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35230,8 +35310,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35242,8 +35322,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35254,8 +35334,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35266,8 +35346,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35278,8 +35358,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35290,8 +35370,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35302,8 +35382,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35314,8 +35394,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35326,8 +35406,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35338,8 +35418,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35350,8 +35430,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35364,9 +35444,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35377,9 +35457,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35390,9 +35470,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35403,9 +35483,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35416,9 +35496,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35429,9 +35509,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35442,9 +35522,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35455,9 +35535,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35470,9 +35550,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35483,9 +35563,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35496,9 +35576,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35509,9 +35589,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35522,9 +35602,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35535,9 +35615,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35548,9 +35628,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35561,9 +35641,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35576,9 +35656,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35589,9 +35669,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35602,9 +35682,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35615,9 +35695,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35628,9 +35708,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35641,9 +35721,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35654,9 +35734,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35667,9 +35747,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35682,9 +35762,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35695,9 +35775,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35708,9 +35788,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35721,9 +35801,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35734,9 +35814,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35747,9 +35827,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35760,9 +35840,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35773,9 +35853,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35788,9 +35868,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35801,9 +35881,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35814,9 +35894,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35829,9 +35909,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35842,9 +35922,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35855,9 +35935,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35870,9 +35950,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35883,9 +35963,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35896,9 +35976,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35911,9 +35991,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35924,9 +36004,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35937,9 +36017,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35952,7 +36032,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35963,7 +36043,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35974,7 +36054,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35987,7 +36067,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35998,7 +36078,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36009,7 +36089,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36023,8 +36103,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36036,8 +36116,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36049,8 +36129,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36063,9 +36143,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36076,9 +36156,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36089,9 +36169,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36104,9 +36184,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36117,9 +36197,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36130,9 +36210,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36145,9 +36225,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36158,9 +36238,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36171,9 +36251,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36186,9 +36266,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36199,9 +36279,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36212,9 +36292,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36227,9 +36307,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36240,9 +36320,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36253,9 +36333,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36268,9 +36348,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36281,9 +36361,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36294,9 +36374,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36309,9 +36389,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36322,9 +36402,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36335,9 +36415,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36350,7 +36430,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36361,7 +36441,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -36374,7 +36454,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36385,7 +36465,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36396,7 +36476,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36407,7 +36487,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36418,7 +36498,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36429,7 +36509,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36440,7 +36520,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36451,7 +36531,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36462,7 +36542,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36473,7 +36553,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36484,7 +36564,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36495,7 +36575,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36506,7 +36586,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36517,7 +36597,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36528,7 +36608,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36539,7 +36619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36550,7 +36630,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36561,7 +36641,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36574,9 +36654,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36587,9 +36667,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36600,9 +36680,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36613,7 +36693,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36624,7 +36704,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36635,7 +36715,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36646,7 +36726,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36657,7 +36737,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36668,7 +36748,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36681,7 +36761,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36692,7 +36772,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36703,7 +36783,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36714,7 +36794,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36725,7 +36805,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36736,7 +36816,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36747,7 +36827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36758,7 +36838,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36769,7 +36849,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36782,9 +36862,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36795,9 +36875,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36808,9 +36888,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36821,9 +36901,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36834,9 +36914,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36847,9 +36927,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36860,9 +36940,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36873,9 +36953,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36886,9 +36966,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36899,9 +36979,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36912,9 +36992,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36925,9 +37005,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36938,9 +37018,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36951,9 +37031,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36964,9 +37044,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36977,9 +37057,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36990,9 +37070,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37003,9 +37083,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37016,9 +37096,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37029,9 +37109,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37042,9 +37122,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37055,9 +37135,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37068,9 +37148,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37081,9 +37161,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37096,7 +37176,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37107,7 +37187,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37118,7 +37198,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37129,9 +37209,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37142,9 +37222,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37155,9 +37235,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37168,7 +37248,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV); RM Sz128; Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37179,7 +37259,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV); RM Sz256; Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37190,7 +37270,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV); RM Sz512; Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37201,9 +37281,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37214,9 +37294,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37227,9 +37307,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37242,7 +37322,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37253,7 +37333,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37264,7 +37344,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37277,7 +37357,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37288,7 +37368,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37299,7 +37379,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37313,8 +37393,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37326,8 +37406,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37339,8 +37419,8 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37355,8 +37435,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37367,8 +37447,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37379,8 +37459,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37391,8 +37471,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37403,8 +37483,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37415,8 +37495,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37427,8 +37507,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37439,8 +37519,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37451,8 +37531,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37463,8 +37543,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37475,8 +37555,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37487,8 +37567,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37499,7 +37579,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37510,7 +37590,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37521,7 +37601,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37532,7 +37612,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMSae(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37545,8 +37625,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37557,8 +37637,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37569,8 +37649,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37581,8 +37661,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37593,8 +37673,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37605,8 +37685,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37617,8 +37697,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37629,8 +37709,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37641,8 +37721,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37653,8 +37733,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37665,8 +37745,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37677,8 +37757,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37689,7 +37769,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz64) |] + Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37700,7 +37780,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz64) |] + Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37711,7 +37791,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit); RMEr(Sz128, Sz32) |] + Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37722,7 +37802,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz64, OprRegType.RegBit); RMEr(Sz128, Sz32) |] + Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37735,8 +37815,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37747,8 +37827,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37759,8 +37839,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37771,8 +37851,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37783,8 +37863,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37795,8 +37875,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37807,8 +37887,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37819,8 +37899,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37831,8 +37911,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37843,8 +37923,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37855,8 +37935,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37867,8 +37947,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37879,8 +37959,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37891,8 +37971,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37903,8 +37983,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37915,8 +37995,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37927,8 +38007,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37939,8 +38019,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37953,8 +38033,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37965,8 +38045,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37977,8 +38057,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37989,8 +38069,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38001,8 +38081,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38013,8 +38093,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38025,9 +38105,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38038,9 +38118,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz64, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -38051,9 +38131,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz32, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(32, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38064,9 +38144,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz64, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -38083,7 +38163,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38094,7 +38174,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -38105,7 +38185,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38118,7 +38199,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38129,7 +38210,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38140,7 +38221,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38151,7 +38232,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38162,7 +38243,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38173,7 +38254,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38184,7 +38265,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38195,7 +38276,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38206,7 +38287,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38217,7 +38298,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38228,7 +38309,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38239,7 +38320,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38250,7 +38331,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38261,7 +38342,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38272,7 +38353,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38283,7 +38364,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38294,7 +38375,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38305,7 +38386,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38451,9 +38532,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38465,9 +38546,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38479,9 +38560,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38493,9 +38574,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38507,9 +38588,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38521,9 +38602,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38535,9 +38616,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38549,9 +38630,9 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38566,10 +38647,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz32, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(32, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38582,9 +38663,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz32, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) - Imm Sz8 |] + Operands = [| Reg(32, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38597,10 +38678,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38611,10 +38692,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38625,10 +38706,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38639,10 +38720,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38653,10 +38734,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38667,10 +38748,10 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38703,9 +38784,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38716,9 +38797,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38729,9 +38810,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38744,9 +38825,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38757,9 +38838,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38770,9 +38851,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38785,9 +38866,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38798,9 +38879,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38811,9 +38892,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38826,9 +38907,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38839,9 +38920,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38852,9 +38933,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38867,9 +38948,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38880,9 +38961,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38893,9 +38974,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38908,7 +38989,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38923,9 +39005,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38936,9 +39018,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38949,9 +39031,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38964,9 +39046,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38977,9 +39059,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38990,9 +39072,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39005,9 +39087,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39018,9 +39100,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39031,9 +39113,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39046,9 +39128,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39059,9 +39141,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39072,9 +39154,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39085,9 +39167,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39098,9 +39180,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39111,9 +39193,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39126,9 +39208,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39139,9 +39221,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39152,9 +39234,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39167,9 +39249,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39180,9 +39262,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39193,9 +39275,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39208,9 +39290,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39221,9 +39303,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39234,9 +39316,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39249,9 +39331,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39262,9 +39344,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39275,9 +39357,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39288,9 +39370,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39301,9 +39383,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39314,9 +39396,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39329,9 +39411,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39342,9 +39424,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39355,9 +39437,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39370,9 +39452,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39383,9 +39465,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39396,9 +39478,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39411,9 +39493,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39424,9 +39506,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39437,9 +39519,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39450,9 +39532,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39463,9 +39545,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39476,9 +39558,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39491,9 +39573,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39504,9 +39586,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39517,9 +39599,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39532,9 +39614,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39545,9 +39627,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39558,9 +39640,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39573,9 +39655,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39586,9 +39668,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39599,9 +39681,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39614,8 +39696,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz64, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39626,8 +39708,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39638,8 +39720,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39650,8 +39732,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39662,8 +39744,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39674,8 +39756,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39686,8 +39768,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39698,8 +39780,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39710,8 +39792,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39722,8 +39804,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39734,8 +39816,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39746,8 +39828,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39760,7 +39842,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39771,7 +39853,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39782,7 +39864,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39795,9 +39877,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39808,9 +39890,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39821,9 +39903,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39836,9 +39918,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39849,9 +39931,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39862,9 +39944,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39877,9 +39959,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39890,9 +39972,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39903,9 +39985,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39918,9 +40000,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39931,9 +40013,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39944,9 +40026,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39957,9 +40039,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39970,9 +40052,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39983,9 +40065,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39998,9 +40080,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40011,9 +40093,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40024,9 +40106,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40039,9 +40121,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40052,9 +40134,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40065,9 +40147,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40080,9 +40162,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40093,9 +40175,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40106,9 +40188,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40121,9 +40203,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40134,9 +40216,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40147,9 +40229,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40160,9 +40242,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40173,9 +40255,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40186,9 +40268,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40203,9 +40285,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40216,9 +40298,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40229,9 +40311,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40244,9 +40326,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40257,9 +40339,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40270,9 +40352,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40285,9 +40367,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40298,9 +40380,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40311,9 +40393,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40326,9 +40408,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40339,9 +40421,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40352,9 +40434,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40367,9 +40449,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40380,9 +40462,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40393,9 +40475,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40408,9 +40490,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40421,9 +40503,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40434,9 +40516,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40451,9 +40533,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40464,9 +40546,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40477,9 +40559,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40492,9 +40574,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40505,9 +40587,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40518,9 +40600,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40533,9 +40615,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40546,9 +40628,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40559,9 +40641,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40574,9 +40656,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40587,9 +40669,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40600,9 +40682,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40615,9 +40697,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40628,9 +40710,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40641,9 +40723,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40656,9 +40738,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40669,9 +40751,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40682,9 +40764,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40697,9 +40779,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40710,9 +40792,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40723,9 +40805,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40744,9 +40826,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40757,9 +40839,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40770,9 +40852,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40791,9 +40873,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40804,9 +40886,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40817,9 +40899,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40844,9 +40926,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40857,9 +40939,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40870,9 +40952,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40885,9 +40967,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40898,9 +40980,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40911,9 +40993,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40926,9 +41008,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40939,9 +41021,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40952,9 +41034,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40971,7 +41053,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40982,7 +41065,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40993,7 +41076,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41004,9 +41087,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41017,9 +41100,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41030,9 +41113,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41045,7 +41128,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41056,7 +41140,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41067,7 +41152,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41078,9 +41163,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41091,9 +41176,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41104,9 +41189,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41119,7 +41204,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41130,7 +41216,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41141,7 +41228,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41152,9 +41240,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41165,9 +41253,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41178,9 +41266,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41193,7 +41281,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41204,7 +41293,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41215,7 +41304,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMSae(Sz256, Sz256) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMSae(256, 256) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41226,7 +41316,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41237,7 +41328,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41248,7 +41339,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41261,7 +41352,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41272,7 +41364,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41283,7 +41376,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41294,9 +41387,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41307,9 +41400,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41320,9 +41413,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41333,9 +41426,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41346,9 +41439,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41359,9 +41452,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41374,7 +41467,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41385,7 +41479,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41396,7 +41490,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41407,9 +41501,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41420,9 +41514,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41433,9 +41527,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41446,9 +41540,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41459,9 +41553,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41472,9 +41566,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41487,9 +41581,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41500,9 +41594,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41513,9 +41607,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41526,9 +41620,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41543,7 +41637,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41554,7 +41649,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41565,7 +41661,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41578,7 +41675,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41589,7 +41687,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41600,7 +41699,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41611,7 +41711,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41624,7 +41725,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41635,7 +41736,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41646,7 +41747,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41657,7 +41758,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41670,7 +41771,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41681,7 +41782,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41694,7 +41795,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41705,7 +41806,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41716,7 +41817,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41729,7 +41830,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41740,7 +41841,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41751,7 +41852,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41764,8 +41865,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41776,8 +41877,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41788,8 +41889,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41802,8 +41903,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41814,8 +41915,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41826,8 +41927,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41840,7 +41941,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41851,7 +41953,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41862,7 +41964,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41873,7 +41975,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41884,7 +41987,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41895,7 +41998,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41908,7 +42011,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41919,7 +42023,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41930,7 +42035,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41941,7 +42046,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41952,7 +42058,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41963,7 +42070,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41976,7 +42083,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41987,7 +42095,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41998,7 +42107,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42009,7 +42119,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42020,7 +42131,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42031,7 +42143,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42044,7 +42157,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42055,7 +42169,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42066,7 +42180,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42077,7 +42191,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42088,7 +42203,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42099,7 +42214,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42112,7 +42227,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42123,7 +42239,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42134,7 +42251,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42145,7 +42262,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42156,7 +42274,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42167,7 +42286,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42180,7 +42299,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42191,7 +42311,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42202,7 +42322,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42213,7 +42333,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42224,7 +42345,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42235,7 +42356,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42248,7 +42369,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42259,7 +42380,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42270,7 +42391,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42281,7 +42402,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42292,7 +42413,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42303,7 +42424,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42314,7 +42435,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42325,7 +42446,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42336,7 +42457,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42347,7 +42468,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42358,7 +42479,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42369,7 +42490,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42383,8 +42504,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42396,8 +42517,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42409,8 +42530,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42422,8 +42543,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42435,8 +42556,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42448,8 +42569,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42461,8 +42582,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42474,8 +42595,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42487,8 +42608,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42500,8 +42621,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42513,8 +42634,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42526,8 +42647,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42540,9 +42661,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42553,9 +42674,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42566,9 +42687,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42579,7 +42700,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42590,7 +42711,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42601,7 +42722,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42612,7 +42733,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42623,7 +42744,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42634,7 +42755,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42648,8 +42769,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42661,8 +42782,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42674,8 +42795,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42686,7 +42807,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42697,7 +42818,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42708,7 +42829,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42719,7 +42840,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42730,7 +42851,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42741,7 +42862,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42754,7 +42875,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42765,7 +42886,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42776,7 +42897,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42787,7 +42908,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42798,7 +42919,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42809,7 +42930,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42822,9 +42943,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42835,9 +42956,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42848,9 +42969,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42863,9 +42984,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42876,9 +42997,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42889,9 +43010,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42902,9 +43023,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42915,9 +43036,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42928,9 +43049,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42943,9 +43064,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42956,9 +43077,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42975,7 +43096,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42986,7 +43108,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42997,7 +43119,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43008,7 +43130,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43019,7 +43142,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43030,7 +43153,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43043,7 +43166,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43054,7 +43178,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43065,7 +43190,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43076,7 +43201,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43087,7 +43213,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43098,7 +43225,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43111,7 +43238,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43122,7 +43250,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43133,7 +43262,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43144,7 +43274,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz16); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43155,7 +43286,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43166,7 +43298,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43179,7 +43312,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43190,7 +43324,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43201,7 +43335,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43212,7 +43346,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43223,7 +43358,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43234,7 +43369,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43247,7 +43382,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43258,7 +43394,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43269,7 +43406,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43280,7 +43417,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz32); Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43291,7 +43429,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64); Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43302,7 +43441,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43315,7 +43454,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43326,7 +43466,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43337,7 +43477,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43348,7 +43488,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43359,7 +43499,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43370,7 +43510,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43383,9 +43523,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43396,9 +43536,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43409,9 +43549,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43422,9 +43562,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43438,8 +43578,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43451,8 +43591,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43464,8 +43604,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43478,9 +43618,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43491,9 +43631,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43504,9 +43644,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43517,7 +43657,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43528,7 +43668,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43539,7 +43679,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43550,7 +43690,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43561,7 +43701,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43572,7 +43712,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43585,9 +43725,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43598,9 +43738,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43611,9 +43751,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43624,9 +43764,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43637,9 +43777,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43650,9 +43790,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43663,7 +43803,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43674,7 +43814,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43685,7 +43825,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43696,7 +43836,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43707,7 +43847,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43718,7 +43858,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43731,9 +43871,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43744,9 +43884,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43757,9 +43897,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43770,7 +43910,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43781,7 +43921,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43792,7 +43932,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43805,9 +43945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43818,9 +43958,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43831,9 +43971,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43844,9 +43984,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43857,9 +43997,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43870,9 +44010,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43885,9 +44025,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43898,9 +44038,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43911,9 +44051,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43926,9 +44066,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43939,9 +44079,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43952,9 +44092,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43965,9 +44105,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43978,9 +44118,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43991,9 +44131,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44006,9 +44146,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44019,9 +44159,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44032,9 +44172,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44047,9 +44187,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44060,9 +44200,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44073,9 +44213,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44086,9 +44226,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44099,9 +44239,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44112,9 +44252,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44127,9 +44267,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44140,9 +44280,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44153,9 +44293,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44166,9 +44306,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44179,9 +44319,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44192,9 +44332,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44209,8 +44349,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44221,8 +44361,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44233,8 +44373,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44245,8 +44385,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44257,8 +44397,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44269,8 +44409,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44283,9 +44423,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44296,9 +44436,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44311,8 +44451,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44323,8 +44463,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44335,8 +44475,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44347,8 +44487,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44359,8 +44499,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44371,8 +44511,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44385,9 +44525,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44398,9 +44538,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44411,9 +44551,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44424,9 +44564,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44437,9 +44577,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44450,9 +44590,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44465,9 +44605,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44478,9 +44618,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44491,9 +44631,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44504,9 +44644,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44517,9 +44657,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44530,9 +44670,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44545,9 +44685,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44558,9 +44698,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44571,9 +44711,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44584,9 +44724,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44597,9 +44737,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44610,9 +44750,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44633,8 +44773,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44645,8 +44785,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44657,8 +44797,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44669,8 +44809,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44681,8 +44821,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44693,8 +44833,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44707,9 +44847,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44720,9 +44860,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44735,8 +44875,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44747,8 +44887,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44759,8 +44899,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44771,8 +44911,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44783,8 +44923,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44795,8 +44935,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44809,9 +44949,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44822,9 +44962,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44837,9 +44977,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44850,9 +44990,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44863,9 +45003,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44878,9 +45018,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44891,9 +45031,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44904,9 +45044,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44919,9 +45059,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44932,9 +45072,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44945,9 +45085,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44958,9 +45098,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44971,9 +45111,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44984,9 +45124,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44997,9 +45137,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45012,9 +45152,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45025,9 +45165,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45038,9 +45178,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45051,9 +45191,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45066,7 +45206,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45077,7 +45217,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45088,7 +45228,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45099,7 +45239,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45110,7 +45250,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45121,7 +45261,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45134,8 +45274,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45146,8 +45286,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45158,8 +45298,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45170,8 +45310,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45182,8 +45322,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45194,8 +45334,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45212,7 +45352,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45223,7 +45364,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45234,7 +45376,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45247,7 +45390,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45258,7 +45402,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45269,7 +45414,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45280,7 +45426,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45291,7 +45438,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45302,7 +45450,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45315,7 +45464,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45326,7 +45475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45337,7 +45486,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45348,7 +45497,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45361,7 +45510,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45372,7 +45521,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45397,7 +45546,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45408,8 +45557,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45420,7 +45569,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45431,8 +45580,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45443,7 +45592,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45454,8 +45603,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45466,7 +45615,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45477,8 +45626,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45489,7 +45638,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); Mem Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45500,8 +45649,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45512,7 +45661,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); Mem Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45523,8 +45672,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45537,7 +45686,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45548,8 +45697,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45560,7 +45709,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45571,8 +45720,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RMBit) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Reg(256, OprRegType.RMBit) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45583,7 +45732,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45594,8 +45743,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RMBit) - Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Reg(512, OprRegType.RMBit) + Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45606,7 +45755,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45617,8 +45766,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RMBit) - Reg(Sz128, OprRegType.RegBit) |] + Operands = [| Reg(128, OprRegType.RMBit) + Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45629,7 +45778,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45640,8 +45789,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RMBit) - Reg(Sz256, OprRegType.RegBit) |] + Operands = [| Reg(256, OprRegType.RMBit) + Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45652,7 +45801,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45663,8 +45812,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RMBit) - Reg(Sz512, OprRegType.RegBit) |] + Operands = [| Reg(512, OprRegType.RMBit) + Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45677,9 +45826,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45690,9 +45839,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45703,9 +45852,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45716,9 +45865,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45729,9 +45878,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45742,9 +45891,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45757,9 +45906,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45770,9 +45919,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45783,9 +45932,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45796,9 +45945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45809,9 +45958,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45822,9 +45971,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45837,9 +45986,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45850,9 +45999,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45863,9 +46012,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45876,9 +46025,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45889,9 +46038,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45902,9 +46051,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45920,8 +46069,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45933,8 +46082,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45946,8 +46095,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45959,8 +46108,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45972,8 +46121,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45985,8 +46134,8 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46013,9 +46162,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46026,9 +46175,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46039,9 +46188,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46054,9 +46203,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46067,9 +46216,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46080,9 +46229,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46093,9 +46242,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46106,9 +46255,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46119,9 +46268,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46134,9 +46283,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46147,9 +46296,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46160,9 +46309,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46173,8 +46322,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46185,8 +46334,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46197,8 +46346,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46209,9 +46358,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46222,9 +46371,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46235,9 +46384,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46250,9 +46399,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46263,9 +46412,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46276,9 +46425,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46289,9 +46438,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46302,9 +46451,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46315,9 +46464,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46332,9 +46481,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46345,9 +46494,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46358,9 +46507,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46371,9 +46520,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46384,9 +46533,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46397,9 +46546,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46412,9 +46561,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46425,9 +46574,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46438,9 +46587,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46451,9 +46600,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46464,9 +46613,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46477,9 +46626,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46492,9 +46641,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46505,9 +46654,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46518,9 +46667,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46531,9 +46680,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46544,9 +46693,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46557,9 +46706,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46572,7 +46721,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] + Operands = [| Reg(128, OprRegType.RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46583,7 +46732,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] + Operands = [| Reg(256, OprRegType.RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46594,7 +46743,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz8) |] + Operands = [| Reg(512, OprRegType.RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46607,7 +46756,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46618,7 +46768,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46629,7 +46780,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RMdiff(Sz128, Sz16) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46642,8 +46794,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46654,8 +46806,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46666,8 +46818,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46680,8 +46832,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46692,8 +46844,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46704,8 +46856,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46718,8 +46870,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46730,8 +46882,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46742,8 +46894,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz32, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(32, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46754,8 +46906,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46766,8 +46918,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46778,8 +46930,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz64, OprRegType.RMBit) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(64, OprRegType.RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46792,9 +46944,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46805,9 +46957,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46818,9 +46970,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46831,9 +46983,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46844,9 +46996,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46857,9 +47009,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46872,9 +47024,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46885,9 +47037,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46898,9 +47050,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46911,9 +47063,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46924,9 +47076,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46937,9 +47089,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46952,9 +47104,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46965,9 +47117,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46978,9 +47130,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46991,9 +47143,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47004,9 +47156,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47017,9 +47169,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47038,9 +47190,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47051,9 +47203,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47064,9 +47216,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47087,7 +47239,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47098,7 +47250,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47109,7 +47261,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47120,7 +47272,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47131,7 +47283,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47142,7 +47294,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47155,7 +47307,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47166,7 +47318,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47177,7 +47329,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47188,7 +47340,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit); RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47199,7 +47351,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit); RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47210,7 +47362,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit); RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47223,7 +47375,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47234,7 +47386,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47245,7 +47397,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47256,7 +47408,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47267,7 +47419,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47278,7 +47430,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47291,7 +47443,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47302,7 +47454,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47313,7 +47465,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47324,7 +47476,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47335,7 +47487,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47346,7 +47498,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz512; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47361,9 +47513,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47374,9 +47526,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47387,9 +47539,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47400,9 +47552,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47413,9 +47565,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47426,9 +47578,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47443,7 +47595,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz128, OprRegType.VVVV); RM Sz128 |] + Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47454,7 +47606,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz256, OprRegType.VVVV); RM Sz256 |] + Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47465,7 +47617,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(Sz512, OprRegType.VVVV); RM Sz512 |] + Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47478,7 +47630,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47489,7 +47641,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47500,7 +47652,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47511,7 +47663,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47522,7 +47674,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47533,7 +47685,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47546,7 +47698,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47557,7 +47709,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47568,7 +47720,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47579,7 +47731,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47590,7 +47742,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47601,7 +47753,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47614,7 +47766,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47625,7 +47777,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47636,7 +47788,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47647,7 +47799,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47658,7 +47810,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47669,7 +47821,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz32 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47682,7 +47834,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47693,7 +47845,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47704,7 +47856,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47715,7 +47867,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz128, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47726,7 +47878,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz256, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47737,7 +47889,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(Sz512, OprRegType.RegBit); MemVSIB Sz64 |] + Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47754,9 +47906,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47767,9 +47919,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47780,9 +47932,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47793,9 +47945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47806,9 +47958,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47819,9 +47971,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47834,9 +47986,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47847,9 +47999,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47860,9 +48012,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47873,9 +48025,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47886,9 +48038,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47899,9 +48051,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47914,9 +48066,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47927,9 +48079,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47940,9 +48092,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47953,9 +48105,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47966,9 +48118,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47979,9 +48131,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47994,9 +48146,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48007,9 +48159,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48022,9 +48174,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48035,9 +48187,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48048,9 +48200,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48061,9 +48213,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48074,9 +48226,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48087,9 +48239,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48100,9 +48252,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48115,9 +48267,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48128,9 +48280,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48141,9 +48293,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48156,9 +48308,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48169,9 +48321,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48182,9 +48334,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48195,9 +48347,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48208,9 +48360,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48221,9 +48373,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48236,9 +48388,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48249,9 +48401,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48264,9 +48416,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48277,9 +48429,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48290,9 +48442,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48303,9 +48455,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48316,9 +48468,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48329,9 +48481,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48344,9 +48496,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48357,9 +48509,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48372,7 +48524,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48383,7 +48535,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48394,7 +48546,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48405,7 +48557,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48416,7 +48568,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48427,7 +48579,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48440,7 +48592,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48451,7 +48603,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48462,7 +48614,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48473,7 +48625,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48484,7 +48636,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48495,7 +48647,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48508,7 +48660,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48519,7 +48671,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48530,7 +48682,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48541,7 +48693,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48552,7 +48704,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48563,7 +48715,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz32; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48576,7 +48728,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48587,7 +48739,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48598,7 +48750,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48609,7 +48761,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48620,7 +48772,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48631,7 +48783,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB Sz64; Reg(Sz512, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(512, OprRegType.RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48648,9 +48800,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48661,9 +48813,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48674,9 +48826,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48687,9 +48839,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48700,9 +48852,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48713,9 +48865,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48728,9 +48880,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48741,9 +48893,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48754,9 +48906,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48767,9 +48919,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48780,9 +48932,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48793,9 +48945,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48808,9 +48960,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48821,9 +48973,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48834,9 +48986,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48847,9 +48999,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48860,9 +49012,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48873,9 +49025,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48888,9 +49040,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48901,9 +49053,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48916,9 +49068,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48929,9 +49081,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48942,9 +49094,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48955,9 +49107,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48968,9 +49120,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48981,9 +49133,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48994,9 +49146,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49009,9 +49161,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49022,9 +49174,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49035,9 +49187,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - Mem Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49050,9 +49202,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49063,9 +49215,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49076,9 +49228,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49089,9 +49241,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49102,9 +49254,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49115,9 +49267,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49130,9 +49282,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49143,9 +49295,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49158,9 +49310,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49171,9 +49323,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49184,9 +49336,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49197,9 +49349,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49210,9 +49362,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49223,9 +49375,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49238,9 +49390,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49251,9 +49403,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49274,9 +49426,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49287,9 +49439,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49300,9 +49452,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49315,9 +49467,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49328,9 +49480,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49341,9 +49493,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49356,9 +49508,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49369,9 +49521,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49382,9 +49534,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49395,9 +49547,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49408,9 +49560,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49421,9 +49573,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49436,9 +49588,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49449,9 +49601,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49462,9 +49614,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49475,9 +49627,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49488,9 +49640,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49501,9 +49653,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49516,9 +49668,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49529,9 +49681,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49542,9 +49694,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49555,9 +49707,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49568,9 +49720,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49581,9 +49733,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49596,9 +49748,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49609,9 +49761,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49624,9 +49776,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49637,9 +49789,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49650,9 +49802,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49663,9 +49815,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49676,9 +49828,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49689,9 +49841,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49704,9 +49856,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49717,9 +49869,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49732,9 +49884,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49745,9 +49897,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49758,9 +49910,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49771,9 +49923,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49784,9 +49936,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49797,9 +49949,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49812,9 +49964,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49825,9 +49977,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49840,9 +49992,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49853,9 +50005,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49866,9 +50018,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49879,9 +50031,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49892,9 +50044,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49905,9 +50057,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstEr(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49920,9 +50072,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49933,9 +50085,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMEr(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49956,8 +50108,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49968,8 +50120,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49980,8 +50132,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49992,8 +50144,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50004,8 +50156,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50016,8 +50168,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50032,7 +50184,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50043,7 +50195,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50054,7 +50206,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50065,7 +50217,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50076,7 +50228,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50087,7 +50239,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50098,7 +50250,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50109,7 +50261,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MemVSIB Sz32 |] + Operands = [| MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50122,7 +50274,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50133,7 +50285,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50144,7 +50296,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50155,7 +50307,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50166,7 +50318,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50177,7 +50329,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp5 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50188,7 +50340,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50199,7 +50351,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MemVSIB Sz64 |] + Operands = [| MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50212,8 +50364,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50224,8 +50376,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50240,8 +50392,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50252,8 +50404,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50266,9 +50418,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50279,9 +50431,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50294,8 +50446,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50306,8 +50458,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50320,9 +50472,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50333,9 +50485,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50350,9 +50502,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50363,9 +50515,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50376,9 +50528,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50415,9 +50567,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50428,9 +50580,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50441,9 +50593,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50456,9 +50608,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50469,9 +50621,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50482,9 +50634,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50497,9 +50649,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50510,9 +50662,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50523,9 +50675,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50538,9 +50690,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50551,9 +50703,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50564,9 +50716,9 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50647,9 +50799,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50660,9 +50812,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50675,9 +50827,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50688,9 +50840,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50705,10 +50857,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50719,10 +50871,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50733,10 +50885,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50747,10 +50899,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50761,10 +50913,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50775,10 +50927,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50791,9 +50943,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50804,9 +50956,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50817,9 +50969,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50832,9 +50984,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50845,9 +50997,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50858,9 +51010,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50877,9 +51029,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50890,9 +51042,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz16) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50903,9 +51055,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz16) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50916,9 +51068,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50929,9 +51081,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50942,9 +51094,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50957,9 +51109,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50970,9 +51122,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50983,9 +51135,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50998,10 +51150,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51012,10 +51164,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51028,10 +51180,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51050,10 +51202,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51064,10 +51216,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51078,10 +51230,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51102,9 +51254,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz8) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 8) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51117,9 +51269,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz32, Sz16) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(32, 16) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51132,7 +51284,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51143,7 +51295,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz64; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -51156,7 +51308,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz32; Reg(Sz128, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51169,10 +51321,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51183,10 +51335,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51197,10 +51349,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51211,10 +51363,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51227,7 +51379,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51238,7 +51390,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51249,7 +51401,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51260,7 +51412,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51273,10 +51425,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51287,10 +51439,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51303,7 +51455,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51314,7 +51466,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51329,9 +51481,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(Sz128, Sz64) - Reg(Sz128, OprRegType.RegBit) - Imm Sz8 |] + Operands = [| RMdiff(128, 64) + Reg(128, OprRegType.RegBit) + Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51342,7 +51494,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51353,7 +51505,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; RegSae Sz512; Imm Sz8 |] + Operands = [| RM 256; RegSae 512; Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51367,9 +51519,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51381,9 +51533,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51395,9 +51547,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51409,9 +51561,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51423,9 +51575,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51437,9 +51589,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51453,9 +51605,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51467,9 +51619,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51481,9 +51633,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51495,9 +51647,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51509,9 +51661,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51523,9 +51675,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51538,10 +51690,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz32, Sz8) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(32, 8) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51554,10 +51706,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMdiff(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMdiff(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51570,10 +51722,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz32 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 32 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51584,10 +51736,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz64 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 64 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -51600,10 +51752,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51614,10 +51766,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51628,10 +51780,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51642,10 +51794,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51660,10 +51812,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51674,10 +51826,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51688,10 +51840,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51702,10 +51854,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51716,10 +51868,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51730,10 +51882,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51746,9 +51898,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51759,9 +51911,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51772,9 +51924,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51785,9 +51937,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51798,9 +51950,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz16) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51811,9 +51963,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz16) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51824,9 +51976,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51837,9 +51989,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51850,9 +52002,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51865,10 +52017,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51879,10 +52031,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51893,10 +52045,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51941,10 +52093,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51955,10 +52107,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51969,10 +52121,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51983,10 +52135,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51999,7 +52151,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52010,7 +52162,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52021,7 +52173,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz256, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52032,7 +52184,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz128; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52045,10 +52197,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52059,10 +52211,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52075,7 +52227,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52086,7 +52238,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM Sz256; Reg(Sz512, OprRegType.RegBit); Imm Sz8 |] + Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52104,9 +52256,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52118,9 +52270,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52132,9 +52284,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52146,9 +52298,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52160,9 +52312,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52174,9 +52326,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52190,9 +52342,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52204,9 +52356,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52218,9 +52370,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52232,9 +52384,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52246,9 +52398,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52260,9 +52412,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52279,10 +52431,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52293,10 +52445,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52307,10 +52459,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52323,10 +52475,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52337,10 +52489,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52351,10 +52503,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52365,10 +52517,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52381,10 +52533,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52395,10 +52547,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52409,10 +52561,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52447,10 +52599,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52461,10 +52613,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52475,10 +52627,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52489,10 +52641,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52503,10 +52655,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52517,10 +52669,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52533,10 +52685,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52547,10 +52699,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52567,10 +52719,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52581,10 +52733,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52595,10 +52747,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52609,10 +52761,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52623,10 +52775,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52637,10 +52789,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52653,10 +52805,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52667,10 +52819,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52683,9 +52835,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52696,9 +52848,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52709,9 +52861,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 64) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52722,9 +52874,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52735,9 +52887,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz16) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52748,9 +52900,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz16) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52761,9 +52913,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52774,9 +52926,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52787,9 +52939,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - RMBcstSae(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + RMBcstSae(512, 512, 32) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52802,10 +52954,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 64) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52816,10 +52968,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz16) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52830,10 +52982,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMSae(128, 32) + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52874,7 +53026,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(128, 128, 64); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52885,7 +53037,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(256, 256, 64); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52896,7 +53048,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(512, 512, 64); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52907,7 +53059,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(128, 128, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52918,7 +53070,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(256, 256, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52929,7 +53081,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(512, 512, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52940,7 +53092,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz128, Sz128, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(128, 128, 32); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52951,7 +53103,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz256, Sz256, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(256, 256, 32); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52962,7 +53114,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(Sz512, Sz512, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg; RMBcst(512, 512, 32); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52975,7 +53127,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(Sz128, Sz64); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(128, 64); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52986,7 +53138,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(Sz128, Sz16); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(128, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52997,7 +53149,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(Sz128, Sz32); Imm Sz8 |] + Operands = [| OpMaskReg; RMdiff(128, 32); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53026,10 +53178,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53040,10 +53192,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53054,10 +53206,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53070,10 +53222,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53084,10 +53236,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53098,10 +53250,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53112,10 +53264,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53126,10 +53278,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53140,10 +53292,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53156,10 +53308,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RM Sz128 - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53170,10 +53322,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RM Sz256 - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53184,10 +53336,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RM Sz512 - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53200,10 +53352,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz32) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53214,10 +53366,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz32) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53228,10 +53380,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz32) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53242,10 +53394,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53256,10 +53408,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53270,10 +53422,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53443,9 +53595,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz16) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53457,9 +53609,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz16) - Imm Sz8 |] + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53471,9 +53623,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz512, OprRegType.VVVV) - RMBcstSae(Sz512, Sz512, Sz16) - Imm Sz8 |] + Reg(512, OprRegType.VVVV) + RMBcstSae(512, 512, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53485,9 +53637,9 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(Sz128, OprRegType.VVVV) - RMSae(Sz128, Sz16) - Imm Sz8 |] + Reg(128, OprRegType.VVVV) + RMSae(128, 16) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53522,10 +53674,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53536,10 +53688,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53550,10 +53702,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53566,10 +53718,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz128, OprRegType.RegBit) - Reg(Sz128, OprRegType.VVVV) - RMBcst(Sz128, Sz128, Sz64) - Imm Sz8 |] + Operands = [| Reg(128, OprRegType.RegBit) + Reg(128, OprRegType.VVVV) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53580,10 +53732,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz256, OprRegType.RegBit) - Reg(Sz256, OprRegType.VVVV) - RMBcst(Sz256, Sz256, Sz64) - Imm Sz8 |] + Operands = [| Reg(256, OprRegType.RegBit) + Reg(256, OprRegType.VVVV) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -53594,10 +53746,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(Sz512, OprRegType.RegBit) - Reg(Sz512, OprRegType.VVVV) - RMBcst(Sz512, Sz512, Sz64) - Imm Sz8 |] + Operands = [| Reg(512, OprRegType.RegBit) + Reg(512, OprRegType.VVVV) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RVMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 19db0815c..c297d87df 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -1,5 +1,7 @@ namespace B2R2.FrontEnd.Intel +open B2R2 + [] type OpcodeClass = | Normal of OpcodeMap @@ -43,29 +45,29 @@ type REXPrefixType = type OperandType = | NoOpr /// Register or Memory. - | RM of OprSize + | RM of RegType /// Register or Memory operand with different sizes. - | RMdiff of OprSize * OprSize + | RMdiff of RegType * RegType /// Register or Memory with embedded rounding {er} (only EVEX). - | RMEr of OprSize * OprSize + | RMEr of RegType * RegType /// Register or Memory with suppress-all-exceptions {sae} (only EVEX). - | RMSae of OprSize * OprSize + | RMSae of RegType * RegType /// Register or Memory with broadcast (only EVEX). - | RMBcst of OprSize * OprSize * OprSize + | RMBcst of RegType * RegType * RegType /// Register or Memory with broadcast and {er} (only EVEX). - | RMBcstEr of OprSize * OprSize * OprSize + | RMBcstEr of RegType * RegType * RegType /// Register or Memory with broadcast and {sae} (only EVEX). - | RMBcstSae of OprSize * OprSize * OprSize + | RMBcstSae of RegType * RegType * RegType /// Register with suppress-all-exceptions {sae} (only EVEX). - | RegSae of OprSize + | RegSae of RegType /// Register. - | Reg of OprSize * OprRegType + | Reg of RegType * OprRegType /// Address-size-dependent register operand. | RegAddr /// Opmask register. | OpMaskReg /// Opmask register or memory. - | KM of OprSize + | KM of RegType /// Segment register. | Sreg /// Control register. @@ -77,43 +79,29 @@ type OperandType = /// ST(i) register. | STReg of Register option /// Bound register or memory. - | BM of OprSize + | BM of RegType /// Bound register. | BndReg /// MMX register or memory. - | MM of OprSize + | MM of RegType /// MMX register. | MMXReg /// Memory. - | Mem of OprSize + | Mem of RegType /// Memory with VSIB addressing (eg. vm32x). - | MemVSIB of OprSize + | MemVSIB of RegType /// Memory offset. - | Moffs of OprSize + | Moffs of RegType /// Far memory offset. - | Far of OprSize + | Far of RegType /// Immediate. - | Imm of OprSize + | Imm of RegType /// Fixed immediate. | FixedImm of int /// Relative offset. - | Rel of OprSize + | Rel of RegType | Unknown of string (* XXX: Temp *) -and OprSize = - | Sz8 - | Sz16 - | Sz32 - | Sz48 - | Sz64 - | Sz80 - | Sz128 - | Sz256 - | Sz384 - | Sz512 - | Sz1024 - | SzUnknown - and OprRegType = | RegBit (* ModRM:reg *) | RMBit (* ModRM:r/m *) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 3bf536da2..0d57570af 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -73,13 +73,13 @@ type IntelParser(wordSz, reader) = Array.map (fun o -> match o with | RM sz | Reg(sz, _) | Mem sz | Imm sz | Rel sz -> Some sz - | FixedReg(Register.AX) -> Some Sz16 + | FixedReg(Register.AX) -> Some 16 | _ -> None) operands |> Array.distinct let contains8BitOperandSize oprSz = match oprSz with - | [| Some Sz8 |] -> true + | [| Some 8 |] -> true | _ -> false let matchesREXPrefix (phlp: ParsingHelper) (insCore: InstructionCore) = @@ -159,13 +159,13 @@ type IntelParser(wordSz, reader) = let contains16BitOperandSize oprSz op = match oprSz with - | [| Some Sz16 |] when op = Opcode.RET -> false - | [| Some Sz16; _ |] when op = Opcode.ENTER -> false - | [| None; Some Sz16 |] when op = Opcode.MOV -> false + | [| Some 16 |] when op = Opcode.RET -> false + | [| Some 16; _ |] when op = Opcode.ENTER -> false + | [| None; Some 16 |] when op = Opcode.MOV -> false | [| None |] when isImplicit16BitOp op -> true - | [| Some Sz16 |] - | [| Some Sz16; _ |] - | [| None; Some Sz16 |] (* Temp *) -> true + | [| Some 16 |] + | [| Some 16; _ |] + | [| None; Some 16 |] (* Temp *) -> true | _ -> false let matchesOperandSize pref (insCore: InstructionCore) = @@ -271,25 +271,11 @@ type IntelParser(wordSz, reader) = else () idx - let oprSizeToRegType = function - | OprSize.Sz8 -> 8 - | OprSize.Sz16 -> 16 - | OprSize.Sz32 -> 32 - | OprSize.Sz48 -> 48 - | OprSize.Sz64 -> 64 - | OprSize.Sz80 -> 80 - | OprSize.Sz128 -> 128 - | OprSize.Sz256 -> 256 - | OprSize.Sz384 -> 384 - | OprSize.Sz512 -> 512 - | OprSize.Sz1024 -> 1024 - | OprSize.SzUnknown -> 0 - let getImmediateSize = function - | [| Some Sz8; None |] -> 8 - | [| Some Sz16; None |] -> 16 - | [| Some Sz32; None |] -> 32 - | [| Some Sz64; None |] -> 64 + | [| Some 8; None |] -> 8 + | [| Some 16; None |] -> 16 + | [| Some 32; None |] -> 32 + | [| Some 64; None |] -> 64 | _ -> 0 // Temp let setMemoryOperandContext (phlp: ParsingHelper) addrSz regSz memSz = @@ -312,21 +298,16 @@ type IntelParser(wordSz, reader) = // FIXME: need operand size determination logic match opr with | RM sz -> - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemOrReg modRM span phlp | RMdiff(regSz, memSz) -> - let regSz = oprSizeToRegType regSz - let memSz = oprSizeToRegType memSz setMemoryOperandContextWithCurrentAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp | Reg(sz, OprRegType.OpRd) -> (* Opcode[2:0] contains the operand. *) - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) OperandParsers.getOprFromRegGrpREX regBit phlp | Reg(sz, oprRegType) -> - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz match oprRegType with | OprRegType.OpRd -> @@ -343,7 +324,7 @@ type IntelParser(wordSz, reader) = let regBit = phlp.ReadByte span >>> 4 &&& 0b1111uy |> int OperandParsers.findRegRBits sz phlp.REXPrefix regBit |> OprReg | OprRegType.Unused -> failwith "Unused OprRegType." (* FixedReg *) - | Mem SzUnknown -> + | Mem 0 -> // FIXME: need operand size determination logic let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) @@ -351,7 +332,6 @@ type IntelParser(wordSz, reader) = OperandParsers.parseMemory modRM span (phlp: ParsingHelper) | Mem sz -> // FIXME: need operand size determination logic - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | Imm sz -> @@ -359,12 +339,12 @@ type IntelParser(wordSz, reader) = //let effAddrSz = ParsingHelper.GetEffAddrSize phlp //let effOprSz = ParsingHelper.GetEffOprSize(phlp, szCond) //setMemoryOperandContext phlp effAddrSz effOprSz effOprSz - OperandParsers.parseOprSImm span phlp (oprSizeToRegType sz) + OperandParsers.parseOprSImm span phlp sz | Rel sz -> let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.F64) setMemoryOperandContext phlp effAddrSz effOprSz effOprSz - OperandParsers.parseOprForRelJmp span phlp (oprSizeToRegType sz) + OperandParsers.parseOprForRelJmp span phlp sz | FixedReg reg -> let sz = Register.toRegType phlp.WordSize reg setMemoryOperandContextWithCurrentAddr phlp sz sz @@ -375,7 +355,6 @@ type IntelParser(wordSz, reader) = if Operands.modIsReg modRM then OperandParsers.parseBoundRegister (Operands.getRM modRM) else - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) @@ -384,12 +363,10 @@ type IntelParser(wordSz, reader) = if Operands.modIsReg modRM then OperandParsers.parseMMXReg (Operands.getRM modRM) else - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | FixedImm imm -> OprImm(int64 imm, getImmediateSize sz) | Moffs sz -> - let sz = oprSizeToRegType sz setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseOprOnlyDisp span phlp | Sreg -> OperandParsers.parseSegReg (Operands.getReg modRM) @@ -397,8 +374,8 @@ type IntelParser(wordSz, reader) = let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) let struct (regSz, oprSz) = - if sz = Sz16 then struct (16, 32) - elif sz = Sz32 then struct (32, 48) + if sz = 16 then struct (16, 32) + elif sz = 32 then struct (32, 48) else struct (64, 80) phlp.MemEffOprSize <- oprSz phlp.MemEffAddrSize <- effAddrSz From 656c04709012fa941dad9bfb35fc9cd8becd1c67 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Fri, 8 May 2026 16:14:17 +0900 Subject: [PATCH 17/26] [Intel] Resolve encoding ambiguity for PAUSE --- src/FrontEnd/Intel/Parser.fs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 0d57570af..b438c6559 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -234,12 +234,26 @@ type IntelParser(wordSz, reader) = v <= modRM && modRM <= v + 7uy | _ -> true + let tryFindSpecialCaseIndex (phlp: ParsingHelper) (ins: InstructionCore[]) = + let isPauseCase = + phlp.VEXInfo.IsNone + && phlp.OpcodeClass = OpcodeClass.Normal OneByte + && Prefix.hasREPZ phlp.Prefixes + && uint8 ins[0].OpcodeByte = 0x90uy + if isPauseCase then + ins + |> Array.tryFindIndex (fun insCore -> + insCore.Opcode = Opcode.PAUSE + && insCore.PrefixType = Mandatory F3) + else None + let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length if insLen = 0 then failwith "Error: Instruction core array is empty." else - let mutable idx = -1 + let mutable idx = + tryFindSpecialCaseIndex phlp ins |> Option.defaultValue -1 let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] From 58b08f8a2d2d47806f1ee96f01f928c5d79ebcc0 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 12 May 2026 13:24:01 +0900 Subject: [PATCH 18/26] [Intel] Handle mandatory prefixes in specials --- src/FrontEnd/Intel.Tests/ParserTests.fs | 12 +++++ src/FrontEnd/Intel/Intel.fs | 4 +- src/FrontEnd/Intel/Parser.fs | 70 +++++++++++++++++-------- 3 files changed, 61 insertions(+), 25 deletions(-) diff --git a/src/FrontEnd/Intel.Tests/ParserTests.fs b/src/FrontEnd/Intel.Tests/ParserTests.fs index 162fee557..b3107560d 100644 --- a/src/FrontEnd/Intel.Tests/ParserTests.fs +++ b/src/FrontEnd/Intel.Tests/ParserTests.fs @@ -198,6 +198,18 @@ type ParserTests() = ++ TEST ** [ O.Mem(R.EAX, 8); O.Imm(10L, 8) ] ||> testX86NoPrefixNoSeg + [] + member _.``5.1.6 Bit and Byte Instructions (2)``() = + "f30fbcf6" + ++ TZCNT ** [ O.Reg R.ESI; O.Reg R.ESI ] + ||> testX86NoPrefixNoSeg + + [] + member _.``5.1.6 Bit and Byte Instructions (3)``() = + "660fbcf6" + ++ BSF ** [ O.Reg R.SI; O.Reg R.SI ] + ||> testX86Prefix Prefix.OPSIZE + [] member _.``5.1.7 Control Transfer Instructions (1)``() = "ffe4" diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 030facc72..79dd1559f 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -16597,7 +16597,7 @@ let (norTwo: InstructionCore[][]) = [| // index 188(0xBC) { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem @@ -16608,7 +16608,7 @@ let (norTwo: InstructionCore[][]) = TupleType = TupleType.NA } { OpcodeByte = 188u Opcode = Opcode.BSF - PrefixType = Legacy NP + PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index b438c6559..55d173447 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -123,7 +123,7 @@ type IntelParser(wordSz, reader) = // mandatory. Need more precise handling logic. toPrefixType baseType pref - let matchesPrefixType pref insPref = + let matchesExactPrefixType pref insPref = match pref with | Mandatory NP -> insPref = Mandatory NP || insPref = Legacy NP | Mandatory _ -> @@ -131,7 +131,7 @@ type IntelParser(wordSz, reader) = else pref = insPref | _ -> true - let matchesInstructionPrefix (phlp: ParsingHelper) insPref = + let matchesPrefixWithLegacyFallback (phlp: ParsingHelper) insPref = let pref = match phlp.VEXInfo with | Some v -> v.VPrefixes @@ -145,6 +145,42 @@ type IntelParser(wordSz, reader) = insPref = Legacy NP || insPref = Mandatory NP else false + let tryGetSpecialCasePrefixRule (phlp: ParsingHelper) opByte = + if phlp.VEXInfo.IsSome then None + else + match phlp.OpcodeClass with + | OpcodeClass.Normal OneByte + when opByte = 0x90uy && Prefix.hasREPZ phlp.Prefixes -> + Some(Mandatory F3) // F3 90 = PAUSE + | OpcodeClass.Normal TwoBytes when opByte = 0xBCuy || opByte = 0xBDuy -> + // 0F BC/BD use F3 as an opcode selector (TZCNT/LZCNT), while 66 still + // acts as the ordinary operand-size prefix for BSF/BSR. + if Prefix.hasREPZ phlp.Prefixes then Some(Mandatory F3) + else Some(Mandatory NP) + | _ -> None + + let matchesInstructionPrefix (phlp: ParsingHelper) opByte insPref = + match tryGetSpecialCasePrefixRule phlp opByte with + | Some pref -> matchesExactPrefixType pref insPref + | None -> matchesPrefixWithLegacyFallback phlp insPref + + let shouldConsumePrefixForSpecialCase pref = + match pref with + | Mandatory NP -> false + | Mandatory _ -> true + | _ -> false + + let shouldConsumePrefix (phlp: ParsingHelper) (insCore: InstructionCore) = + match phlp.VEXInfo with + | Some _ -> true + | None -> + match tryGetSpecialCasePrefixRule phlp (uint8 insCore.OpcodeByte) with + | Some pref -> shouldConsumePrefixForSpecialCase pref + | None -> + match insCore.PrefixType with + | Mandatory _ -> true + | _ -> false + let isImplicit16BitOp = function | Opcode.CBW | Opcode.CWD @@ -234,30 +270,18 @@ type IntelParser(wordSz, reader) = v <= modRM && modRM <= v + 7uy | _ -> true - let tryFindSpecialCaseIndex (phlp: ParsingHelper) (ins: InstructionCore[]) = - let isPauseCase = - phlp.VEXInfo.IsNone - && phlp.OpcodeClass = OpcodeClass.Normal OneByte - && Prefix.hasREPZ phlp.Prefixes - && uint8 ins[0].OpcodeByte = 0x90uy - if isPauseCase then - ins - |> Array.tryFindIndex (fun insCore -> - insCore.Opcode = Opcode.PAUSE - && insCore.PrefixType = Mandatory F3) - else None - let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length if insLen = 0 then failwith "Error: Instruction core array is empty." else - let mutable idx = - tryFindSpecialCaseIndex phlp ins |> Option.defaultValue -1 + let mutable idx = -1 let mutable i = 0 while i < insLen && idx = -1 do let insCore = ins[i] - let p = matchesInstructionPrefix phlp insCore.PrefixType + let p = + matchesInstructionPrefix phlp (uint8 insCore.OpcodeByte) + insCore.PrefixType let s = matchesOperandSize phlp.Prefixes insCore let c = matchesCPUMode phlp.WordSize insCore.Mode64 insCore.Compat let r = matchesREXPrefix phlp insCore @@ -433,10 +457,10 @@ type IntelParser(wordSz, reader) = operands[i] <- parseOperand span phlp sz modRM ic opr operands |> operandsArrayToOperands - let applyMandatoryPrefixFilter (phlp: ParsingHelper) prefixType = - match prefixType with - | Mandatory _ -> phlp.Prefixes <- filterPrefs phlp.Prefixes - | _ -> () + let applyMandatoryPrefixFilter phlp insCore = + if shouldConsumePrefix phlp insCore then + phlp.Prefixes <- filterPrefs phlp.Prefixes + else () member _.SetDisassemblySyntax syntax = match syntax with @@ -570,5 +594,5 @@ type IntelParser(wordSz, reader) = let insCore = insCores[subIdx] phlp.TupleType <- insCore.TupleType let operands = parseOperands span phlp insCore - applyMandatoryPrefixFilter phlp insCore.PrefixType + applyMandatoryPrefixFilter phlp insCore newInstruction phlp insCore.Opcode operands :> IInstruction From f32e44f5d71206c2b468cd584f6a1e7b0d9bd7a5 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 14 May 2026 11:09:14 +0900 Subject: [PATCH 19/26] [Intel] Clarify sign-extended imm helpers --- src/FrontEnd/Intel/Intel.fs | 242 ----------------------------------- src/FrontEnd/Intel/Parser.fs | 57 ++++++--- 2 files changed, 41 insertions(+), 258 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 79dd1559f..0ac7ca5a7 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -2487,17 +2487,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 108(0x6C) - { OpcodeByte = 108u - Opcode = Opcode.INS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8; FixedReg(Register.DX) |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 108u Opcode = Opcode.INSB PrefixType = Legacy NP @@ -2511,28 +2500,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 109(0x6D) - { OpcodeByte = 109u - Opcode = Opcode.INS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 16; FixedReg(Register.DX) |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 109u - Opcode = Opcode.INS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 32; FixedReg(Register.DX) |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 109u Opcode = Opcode.INSW PrefixType = Legacy NP @@ -2557,17 +2524,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 110(0x6E) - { OpcodeByte = 110u - Opcode = Opcode.OUTS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 110u Opcode = Opcode.OUTSB PrefixType = Legacy NP @@ -2581,28 +2537,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 111(0x6F) - { OpcodeByte = 111u - Opcode = Opcode.OUTS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem 16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 111u - Opcode = Opcode.OUTS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.DX); Mem 32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 111u Opcode = Opcode.OUTSW PrefixType = Legacy NP @@ -4924,17 +4858,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 166(0xA6) - { OpcodeByte = 166u - Opcode = Opcode.CMPS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8; Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 166u Opcode = Opcode.CMPSB PrefixType = Legacy NP @@ -4948,39 +4871,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 167(0xA7) - { OpcodeByte = 167u - Opcode = Opcode.CMPS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 16; Mem 16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 167u - Opcode = Opcode.CMPS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 32; Mem 32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 167u - Opcode = Opcode.CMPS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.REXW - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 64; Mem 64 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.NE - TupleType = TupleType.NA } { OpcodeByte = 167u Opcode = Opcode.CMPSW PrefixType = Legacy NP @@ -5064,17 +4954,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 170(0xAA) - { OpcodeByte = 170u - Opcode = Opcode.STOS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 170u Opcode = Opcode.STOSB PrefixType = Legacy NP @@ -5088,39 +4967,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 171(0xAB) - { OpcodeByte = 171u - Opcode = Opcode.STOS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 171u - Opcode = Opcode.STOS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 171u - Opcode = Opcode.STOS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.REXW - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 64 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.NE - TupleType = TupleType.NA } { OpcodeByte = 171u Opcode = Opcode.STOSW PrefixType = Legacy NP @@ -5156,17 +5002,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 172(0xAC) - { OpcodeByte = 172u - Opcode = Opcode.LODS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 172u Opcode = Opcode.LODSB PrefixType = Legacy NP @@ -5180,39 +5015,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 173(0xAD) - { OpcodeByte = 173u - Opcode = Opcode.LODS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 173u - Opcode = Opcode.LODS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 173u - Opcode = Opcode.LODS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.REXW - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 64 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.NE - TupleType = TupleType.NA } { OpcodeByte = 173u Opcode = Opcode.LODSW PrefixType = Legacy NP @@ -5248,17 +5050,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 174(0xAE) - { OpcodeByte = 174u - Opcode = Opcode.SCAS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 174u Opcode = Opcode.SCASB PrefixType = Legacy NP @@ -5272,39 +5063,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 175(0xAF) - { OpcodeByte = 175u - Opcode = Opcode.SCAS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 16 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 175u - Opcode = Opcode.SCAS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 32 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 175u - Opcode = Opcode.SCAS - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.REXW - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 64 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.NE - TupleType = TupleType.NA } { OpcodeByte = 175u Opcode = Opcode.SCASW PrefixType = Legacy NP diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 55d173447..2431ec072 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -182,12 +182,9 @@ type IntelParser(wordSz, reader) = | _ -> false let isImplicit16BitOp = function - | Opcode.CBW - | Opcode.CWD - | Opcode.PUSHF - | Opcode.POPF - | Opcode.PUSHA - | Opcode.POPA + | Opcode.CBW | Opcode.CWD + | Opcode.PUSHF | Opcode.PUSHA + | Opcode.POPF | Opcode.POPA | Opcode.MOVSW | Opcode.CMPSW | Opcode.SCASW | Opcode.LODSW | Opcode.STOSW | Opcode.INSW | Opcode.OUTSW | Opcode.IRET -> true @@ -331,10 +328,32 @@ type IntelParser(wordSz, reader) = | Opcode.POP | Opcode.PUSH -> SzCond.D64 | _ -> SzCond.Normal - let parseOperand span (phlp: ParsingHelper) sz modRM (ic: InstructionCore) opr + /// Returns true when the given opcode has an encoding that uses a sign- + /// extended immediate operand. + let supportsSignExtendedImmediate = function + | Opcode.ADC | Opcode.ADD | Opcode.AND | Opcode.CMP | Opcode.IMUL + | Opcode.MOV | Opcode.OR | Opcode.SBB | Opcode.SUB | Opcode.TEST + | Opcode.XOR | Opcode.PUSH -> true + | _ -> false + + /// Returns true when an immediate operand should be parsed as a sign- + /// extended immediate because its encoded width is smaller than the + /// effective operand width. PUSH is also treated as such because PUSH imm8 + /// is sign-extended to the stack operand width. + let hasSignExtendedImmediateSizeMismatch opcode szs = + match szs with + (* Implicit accumulator + imm8; no widening. *) + | [| None; Some 8 |] -> false + (* PUSH imm8 is sign-extended to the stack operand width. *) + | [| Some _ |] when opcode = Opcode.PUSH -> true + (* Single-size operand shape; no sign-extension case. *) + | [| None |] | [| Some _ |] -> false + | _ -> true + + let parseOperand span (phlp: ParsingHelper) szs modRM (ic: InstructionCore) o = // FIXME: need operand size determination logic - match opr with + match o with | RM sz -> setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemOrReg modRM span phlp @@ -362,6 +381,9 @@ type IntelParser(wordSz, reader) = let regBit = phlp.ReadByte span >>> 4 &&& 0b1111uy |> int OperandParsers.findRegRBits sz phlp.REXPrefix regBit |> OprReg | OprRegType.Unused -> failwith "Unused OprRegType." (* FixedReg *) + | Mem 0 when ic.Opcode = Opcode.LDDQU -> + setMemoryOperandContextWithCurrentAddr phlp 128 128 + OperandParsers.parseMemory modRM span phlp | Mem 0 -> // FIXME: need operand size determination logic let effAddrSz = ParsingHelper.GetEffAddrSize phlp @@ -373,11 +395,14 @@ type IntelParser(wordSz, reader) = setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | Imm sz -> - //let szCond = getSizeCondForImmediate ic.Opcode - //let effAddrSz = ParsingHelper.GetEffAddrSize phlp - //let effOprSz = ParsingHelper.GetEffOprSize(phlp, szCond) - //setMemoryOperandContext phlp effAddrSz effOprSz effOprSz - OperandParsers.parseOprSImm span phlp sz + let szCond = getSizeCondForImmediate ic.Opcode + let effAddrSz = ParsingHelper.GetEffAddrSize phlp + let effOprSz = ParsingHelper.GetEffOprSize(phlp, szCond) + setMemoryOperandContext phlp effAddrSz effOprSz effOprSz + if supportsSignExtendedImmediate ic.Opcode + && hasSignExtendedImmediateSizeMismatch ic.Opcode szs then + OperandParsers.parseOprSImm span phlp sz + else OperandParsers.parseOprImm span phlp sz | Rel sz -> let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.F64) @@ -403,7 +428,7 @@ type IntelParser(wordSz, reader) = else setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp - | FixedImm imm -> OprImm(int64 imm, getImmediateSize sz) + | FixedImm imm -> OprImm(int64 imm, getImmediateSize szs) | Moffs sz -> setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseOprOnlyDisp span phlp @@ -451,10 +476,10 @@ type IntelParser(wordSz, reader) = | [| NoOpr |] -> Operands.NoOperand | _ -> let operands = Array.zeroCreate ic.Operands.Length - let sz = getOperandSize ic.Operands + let szs = getOperandSize ic.Operands for i = 0 to ic.Operands.Length - 1 do let opr = ic.Operands[i] - operands[i] <- parseOperand span phlp sz modRM ic opr + operands[i] <- parseOperand span phlp szs modRM ic opr operands |> operandsArrayToOperands let applyMandatoryPrefixFilter phlp insCore = From 8b2c880ab6d03010803650d0aa50f234515cbefb Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Fri, 15 May 2026 15:24:14 +0900 Subject: [PATCH 20/26] [Intel] Fix JCXZ family decoding --- src/FrontEnd/Intel/Parser.fs | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 2431ec072..44c084fef 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -267,6 +267,19 @@ type IntelParser(wordSz, reader) = v <= modRM && modRM <= v + 7uy | _ -> true + /// JCXZ/JECXZ/JRCXZ share opcode 0xE3 and are selected by the effective + /// address size determined by the current mode and the 67h prefix: + /// 32-bit mode -> JECXZ, 67h -> JCXZ + /// 64-bit mode -> JRCXZ, 67h -> JECXZ + let matchesJcxzFamilyAddressSize phlp (insCore: InstructionCore) = + if uint8 insCore.OpcodeByte <> 0xE3uy then true + else + match ParsingHelper.GetEffAddrSize phlp, insCore.Opcode with + | 16, Opcode.JCXZ + | 32, Opcode.JECXZ + | 64, Opcode.JRCXZ -> true + | _ -> false + let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length @@ -284,11 +297,12 @@ type IntelParser(wordSz, reader) = let r = matchesREXPrefix phlp insCore let v = matchesVectorLength phlp.VEXInfo insCore.VectorLength let x = matchesInstructionModRM span phlp insCore + let a = matchesJcxzFamilyAddressSize phlp insCore #if DEBUG - printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, x=%b" - i p s c r v x + printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, x=%b, a=%b" + i p s c r v x a #endif - if p && c && s && r && v && x then + if p && c && s && r && v && x && a then #if DEBUG printfn "[Success] maps: %A, pref: %A, rex: %A, vex: %A\nIdx:%d\n%A" phlp.OpcodeClass phlp.Prefixes phlp.REXPrefix phlp.VEXInfo i insCore From 964fc147cf1fcf2addad92072dd297d205e0a36e Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Fri, 15 May 2026 16:24:58 +0900 Subject: [PATCH 21/26] [Intel] Fix operand handling issues --- src/FrontEnd/Intel/Intel.fs | 9499 ++++++++++++------------------ src/FrontEnd/Intel/IntelTypes.fs | 2 +- src/FrontEnd/Intel/Parser.fs | 11 +- 3 files changed, 3901 insertions(+), 5611 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 0ac7ca5a7..79584f3e9 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -11,7 +11,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24,7 +24,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35,7 +35,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46,7 +46,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -59,7 +59,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -72,7 +72,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -83,7 +83,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -94,7 +94,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -181,7 +181,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -194,7 +194,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -205,7 +205,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -216,7 +216,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -229,7 +229,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -242,7 +242,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -253,7 +253,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -264,7 +264,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -340,7 +340,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -353,7 +353,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -364,7 +364,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -375,7 +375,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -388,7 +388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -401,7 +401,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -412,7 +412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -423,7 +423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -510,7 +510,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -523,7 +523,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -534,7 +534,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -545,7 +545,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -558,7 +558,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -571,7 +571,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -582,7 +582,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -593,7 +593,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -680,7 +680,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -693,7 +693,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -704,7 +704,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -715,7 +715,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -728,7 +728,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -741,7 +741,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -752,7 +752,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -763,7 +763,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -839,7 +839,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -852,7 +852,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -863,7 +863,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -874,7 +874,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -887,7 +887,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -900,7 +900,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -911,7 +911,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -922,7 +922,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -998,7 +998,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1011,7 +1011,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1022,7 +1022,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1033,7 +1033,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1046,7 +1046,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1059,7 +1059,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1070,7 +1070,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1081,7 +1081,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1157,7 +1157,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1170,7 +1170,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1181,7 +1181,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1192,7 +1192,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1205,7 +1205,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1218,7 +1218,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1229,7 +1229,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1240,7 +1240,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1316,7 +1316,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1327,7 +1327,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1340,7 +1340,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1351,7 +1351,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1364,7 +1364,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1375,7 +1375,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1388,7 +1388,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1399,7 +1399,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1412,7 +1412,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1423,7 +1423,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1436,7 +1436,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1447,7 +1447,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1460,7 +1460,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1471,7 +1471,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1484,7 +1484,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1495,7 +1495,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1508,7 +1508,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1519,7 +1519,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1532,7 +1532,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1543,7 +1543,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1556,7 +1556,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1567,7 +1567,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1580,7 +1580,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1591,7 +1591,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1604,7 +1604,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1615,7 +1615,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1628,7 +1628,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1639,7 +1639,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1652,7 +1652,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1663,7 +1663,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1676,7 +1676,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1687,7 +1687,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1700,7 +1700,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1711,7 +1711,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1722,7 +1722,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1735,7 +1735,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1746,7 +1746,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1757,7 +1757,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1770,7 +1770,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1781,7 +1781,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1792,7 +1792,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1805,7 +1805,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1816,7 +1816,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1827,7 +1827,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1840,7 +1840,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1851,7 +1851,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1862,7 +1862,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1875,7 +1875,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1886,7 +1886,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1897,7 +1897,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1910,7 +1910,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1921,7 +1921,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1932,7 +1932,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1945,7 +1945,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1956,7 +1956,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -1967,7 +1967,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -1980,7 +1980,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -1991,7 +1991,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2002,7 +2002,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2015,7 +2015,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2026,7 +2026,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2037,7 +2037,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2050,7 +2050,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2061,7 +2061,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2072,7 +2072,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2085,7 +2085,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2096,7 +2096,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2107,7 +2107,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2120,7 +2120,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2131,7 +2131,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2142,7 +2142,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2155,7 +2155,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2166,7 +2166,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2177,7 +2177,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2190,7 +2190,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2201,7 +2201,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2212,7 +2212,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2225,7 +2225,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd) |] + Operands = [| Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2236,7 +2236,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2247,7 +2247,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2308,7 +2308,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(16, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2319,7 +2319,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(32, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -2332,7 +2332,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -2343,7 +2343,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2354,7 +2354,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2365,7 +2365,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(64, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2410,7 +2410,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16; Imm 16 |] + Operands = [| Reg(16, RegBit); RM 16; Imm 16 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2421,7 +2421,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 32 |] + Operands = [| Reg(32, RegBit); RM 32; Imm 32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2432,7 +2432,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 32 |] + Operands = [| Reg(64, RegBit); RM 64; Imm 32 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -2458,7 +2458,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16; Imm 8 |] + Operands = [| Reg(16, RegBit); RM 16; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2469,7 +2469,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 8 |] + Operands = [| Reg(32, RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -2480,7 +2480,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 8 |] + Operands = [| Reg(64, RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3553,7 +3553,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3566,7 +3566,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3577,7 +3577,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3588,7 +3588,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3601,7 +3601,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3612,7 +3612,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3625,7 +3625,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3636,7 +3636,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3647,7 +3647,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3658,7 +3658,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3669,7 +3669,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3680,7 +3680,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3693,7 +3693,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3706,7 +3706,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3717,7 +3717,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3728,7 +3728,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3741,7 +3741,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(8, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(8, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3754,7 +3754,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3765,7 +3765,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3776,7 +3776,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3824,7 +3824,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(16, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3835,7 +3835,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(32, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3846,7 +3846,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(64, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3940,7 +3940,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3951,7 +3951,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3962,7 +3962,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3973,7 +3973,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -3984,7 +3984,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -3995,7 +3995,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4008,7 +4008,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4019,7 +4019,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4030,7 +4030,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4041,7 +4041,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4052,7 +4052,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4063,7 +4063,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4076,7 +4076,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4087,7 +4087,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4098,7 +4098,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4109,7 +4109,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4120,7 +4120,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4131,7 +4131,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4144,7 +4144,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4155,7 +4155,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4166,7 +4166,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4177,7 +4177,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4188,7 +4188,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4199,7 +4199,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4212,7 +4212,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4223,7 +4223,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4234,7 +4234,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4245,7 +4245,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4256,7 +4256,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4267,7 +4267,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4280,7 +4280,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4291,7 +4291,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4302,7 +4302,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4313,7 +4313,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4324,7 +4324,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4335,7 +4335,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4348,7 +4348,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4359,7 +4359,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4370,7 +4370,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4381,7 +4381,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4392,7 +4392,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4403,7 +4403,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4416,7 +4416,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.AX); Reg(16, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.AX); Reg(16, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4427,7 +4427,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.Unused); FixedReg(Register.AX) |] + Operands = [| Reg(16, Unused); FixedReg(Register.AX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4438,7 +4438,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.EAX); Reg(32, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.EAX); Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4449,7 +4449,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| FixedReg(Register.RAX); Reg(64, OprRegType.OpRd) |] + Operands = [| FixedReg(Register.RAX); Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -4460,7 +4460,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.Unused); FixedReg(Register.EAX) |] + Operands = [| Reg(32, Unused); FixedReg(Register.EAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -4471,7 +4471,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.Unused); FixedReg(Register.RAX) |] + Operands = [| Reg(64, Unused); FixedReg(Register.RAX) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5104,7 +5104,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5117,7 +5117,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5130,7 +5130,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5143,7 +5143,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5156,7 +5156,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5169,7 +5169,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5182,7 +5182,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5195,7 +5195,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(8, OprRegType.OpRd); Imm 8 |] + Operands = [| Reg(8, OpRd); Imm 8 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5208,7 +5208,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5219,7 +5219,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5230,7 +5230,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5243,7 +5243,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5254,7 +5254,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5265,7 +5265,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5278,7 +5278,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5289,7 +5289,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5300,7 +5300,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5313,7 +5313,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5324,7 +5324,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5335,7 +5335,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5348,7 +5348,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5359,7 +5359,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5370,7 +5370,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5383,7 +5383,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5394,7 +5394,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5405,7 +5405,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5418,7 +5418,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5429,7 +5429,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5440,7 +5440,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5453,7 +5453,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(16, OprRegType.OpRd); Imm 16 |] + Operands = [| Reg(16, OpRd); Imm 16 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5464,7 +5464,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd); Imm 32 |] + Operands = [| Reg(32, OpRd); Imm 32 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -5475,7 +5475,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd); Imm 64 |] + Operands = [| Reg(64, OpRd); Imm 64 |] OpEn = OpEn.OI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -5870,7 +5870,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(16, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -5881,7 +5881,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] + Operands = [| Reg(32, RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -5894,7 +5894,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(16, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -5905,7 +5905,7 @@ let (norOne: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] + Operands = [| Reg(32, RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Invalid Compat = CompatLegMode.Valid @@ -5993,28 +5993,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 200(0xC8) - { OpcodeByte = 200u - Opcode = Opcode.ENTER - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Imm 16; FixedImm 0 |] - OpEn = OpEn.II - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } - { OpcodeByte = 200u - Opcode = Opcode.ENTER - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Imm 16; FixedImm 1 |] - OpEn = OpEn.II - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 200u Opcode = Opcode.ENTER PrefixType = Legacy NP @@ -6936,17 +6914,6 @@ let (norOne: InstructionCore[][]) = TupleType = TupleType.NA } |] [| // index 215(0xD7) - { OpcodeByte = 215u - Opcode = Opcode.XLAT - PrefixType = Legacy NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| Mem 8 |] - OpEn = OpEn.ZO - Mode64 = Mode64.Valid - Compat = CompatLegMode.Valid - TupleType = TupleType.NA } { OpcodeByte = 215u Opcode = Opcode.XLATB PrefixType = Legacy NP @@ -10079,7 +10046,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10090,7 +10057,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(32, 16) |] + Operands = [| Reg(32, RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10101,7 +10068,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(64, 16) |] + Operands = [| Reg(32, RegBit); RMdiff(64, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10114,7 +10081,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10125,7 +10092,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(32, 16) |] + Operands = [| Reg(32, RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10136,7 +10103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(32, 16) |] + Operands = [| Reg(64, RegBit); RMdiff(32, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10283,8 +10250,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10295,7 +10261,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10306,8 +10272,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10318,7 +10283,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(128, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10329,7 +10294,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10340,7 +10305,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10353,8 +10318,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10365,8 +10329,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10377,7 +10340,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10388,7 +10351,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10401,8 +10364,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10413,8 +10375,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10425,7 +10386,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10436,7 +10397,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10447,7 +10408,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10460,7 +10421,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10471,7 +10432,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10484,7 +10445,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10495,7 +10456,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10508,7 +10469,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10519,7 +10480,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10532,7 +10493,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10543,7 +10504,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10554,8 +10515,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10566,7 +10526,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10579,7 +10539,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10590,7 +10550,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10868,7 +10828,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -10879,7 +10839,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -10916,7 +10876,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(32, RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10927,7 +10887,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(64, RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10938,7 +10898,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(64, OprRegType.RMBit); CtrlReg |] + Operands = [| Reg(64, RMBit); CtrlReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10951,7 +10911,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RMBit); DebugReg |] + Operands = [| Reg(32, RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10962,7 +10922,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RMBit); DebugReg |] + Operands = [| Reg(64, RMBit); DebugReg |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10975,7 +10935,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg(32, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -10986,7 +10946,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| CtrlReg; Reg(64, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -10997,7 +10957,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| CtrlReg; Reg(64, OprRegType.RMBit) |] + Operands = [| CtrlReg; Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11010,7 +10970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg(32, OprRegType.RMBit) |] + Operands = [| DebugReg; Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -11021,7 +10981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| DebugReg; Reg(64, OprRegType.RMBit) |] + Operands = [| DebugReg; Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11042,7 +11002,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11053,7 +11013,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11066,7 +11026,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11077,7 +11037,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11090,7 +11050,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); MM 64 |] + Operands = [| Reg(128, RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11101,7 +11061,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); MM 64 |] + Operands = [| Reg(128, RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11112,7 +11072,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(128, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11123,7 +11083,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(128, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11134,7 +11094,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(128, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11145,7 +11105,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(128, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11158,7 +11118,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11169,7 +11129,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11182,7 +11142,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM 128 |] + Operands = [| MMXReg(RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11193,7 +11153,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(128, 64) |] + Operands = [| MMXReg(RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11204,7 +11164,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11215,7 +11175,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11226,7 +11186,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11237,7 +11197,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11250,7 +11210,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM 128 |] + Operands = [| MMXReg(RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11261,7 +11221,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(128, 64) |] + Operands = [| MMXReg(RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11272,7 +11232,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11283,7 +11243,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11294,7 +11254,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11305,7 +11265,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -11318,8 +11278,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11330,8 +11289,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11344,8 +11302,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11356,8 +11313,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11567,7 +11523,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11578,7 +11534,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11589,7 +11545,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11602,7 +11558,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11613,7 +11569,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11624,7 +11580,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11637,7 +11593,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11648,7 +11604,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11659,7 +11615,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11670,7 +11626,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11681,7 +11637,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11692,7 +11648,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11703,7 +11659,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11714,7 +11670,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11725,7 +11681,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11738,7 +11694,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11749,7 +11705,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11760,7 +11716,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11771,7 +11727,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11782,7 +11738,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11793,7 +11749,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11804,7 +11760,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11815,7 +11771,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11826,7 +11782,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11839,7 +11795,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11850,7 +11806,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11861,7 +11817,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11872,7 +11828,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11883,7 +11839,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11894,7 +11850,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11907,7 +11863,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11918,7 +11874,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11929,7 +11885,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11940,7 +11896,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11951,7 +11907,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11962,7 +11918,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -11975,7 +11931,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11986,7 +11942,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -11997,7 +11953,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12008,7 +11964,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12019,7 +11975,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12030,7 +11986,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12043,7 +11999,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12054,7 +12010,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12065,7 +12021,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12076,7 +12032,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12087,7 +12043,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12098,7 +12054,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12111,7 +12067,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12122,7 +12078,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12133,7 +12089,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12146,7 +12102,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12157,7 +12113,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12168,7 +12124,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12181,7 +12137,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12192,7 +12148,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12203,7 +12159,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12214,7 +12170,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12225,7 +12181,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12236,7 +12192,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12249,7 +12205,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12260,7 +12216,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12271,7 +12227,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12282,7 +12238,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12293,7 +12249,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12304,7 +12260,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12317,7 +12273,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12328,7 +12284,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12339,7 +12295,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12350,7 +12306,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12361,7 +12317,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12372,7 +12328,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12385,7 +12341,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12396,7 +12352,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12407,7 +12363,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12418,7 +12374,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12429,7 +12385,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12440,7 +12396,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12453,7 +12409,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12464,7 +12420,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12475,7 +12431,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12486,7 +12442,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12497,7 +12453,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12508,7 +12464,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12521,7 +12477,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12532,7 +12488,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12543,7 +12499,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NA @@ -12554,7 +12510,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12565,7 +12521,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12576,7 +12532,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -12589,8 +12545,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12601,8 +12556,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12615,7 +12569,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12626,7 +12580,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12637,8 +12591,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12649,8 +12602,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12663,7 +12615,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12674,8 +12626,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12688,7 +12639,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12699,8 +12650,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12713,7 +12663,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12724,7 +12674,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12737,7 +12687,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12748,7 +12698,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12761,7 +12711,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12772,7 +12722,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12785,7 +12735,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12796,7 +12746,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12809,7 +12759,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12820,7 +12770,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12831,8 +12781,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12843,8 +12792,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12857,7 +12805,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12868,7 +12816,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12879,8 +12827,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12891,8 +12838,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12905,7 +12851,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12916,8 +12862,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12928,8 +12873,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12940,8 +12884,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12954,7 +12897,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12965,7 +12908,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12976,7 +12919,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -12989,7 +12932,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13000,7 +12943,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13011,8 +12954,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13023,8 +12965,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13037,7 +12978,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13048,7 +12989,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13059,8 +13000,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13071,8 +13011,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13085,7 +13024,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13096,7 +13035,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13107,8 +13046,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13119,8 +13057,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13133,7 +13070,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13144,7 +13081,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13155,8 +13092,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13167,8 +13103,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13181,7 +13116,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 32 |] + Operands = [| MMXReg(RegBit); MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13192,7 +13127,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13205,7 +13140,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 32 |] + Operands = [| MMXReg(RegBit); MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13216,7 +13151,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13229,7 +13164,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 32 |] + Operands = [| MMXReg(RegBit); MM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13240,7 +13175,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13253,7 +13188,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13264,7 +13199,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13277,7 +13212,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13288,7 +13223,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13301,7 +13236,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13312,7 +13247,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13325,7 +13260,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13336,7 +13271,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13349,7 +13284,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13360,7 +13295,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13373,7 +13308,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13384,7 +13319,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13397,7 +13332,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13408,7 +13343,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13421,7 +13356,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13432,7 +13367,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13445,7 +13380,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13456,7 +13391,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13469,7 +13404,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13482,7 +13417,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13495,7 +13430,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM 32 |] + Operands = [| MMXReg(RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13506,7 +13441,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RM 64 |] + Operands = [| MMXReg(RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13517,7 +13452,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(128, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13528,7 +13463,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(128, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13541,7 +13476,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13552,7 +13487,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13563,7 +13498,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13576,7 +13511,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13587,7 +13522,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13598,7 +13533,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13609,7 +13544,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64; Imm 8 |] + Operands = [| MMXReg(RegBit); MM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13622,7 +13557,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13633,7 +13568,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13644,7 +13579,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13655,7 +13590,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13666,7 +13601,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13677,7 +13612,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13690,7 +13625,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13701,7 +13636,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13712,7 +13647,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13723,7 +13658,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13734,7 +13669,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13745,7 +13680,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13758,7 +13693,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13769,7 +13704,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13780,7 +13715,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13791,7 +13726,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13802,7 +13737,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| MMXReg; Imm 8 |] + Operands = [| MMXReg(RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13813,7 +13748,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.RMBit); Imm 8 |] + Operands = [| Reg(128, RMBit); Imm 8 |] OpEn = OpEn.MI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13826,7 +13761,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13837,7 +13772,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13850,7 +13785,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13861,7 +13796,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13874,7 +13809,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13885,7 +13820,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13919,7 +13854,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13930,7 +13865,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13943,7 +13878,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13954,7 +13889,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13967,7 +13902,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; MMXReg |] + Operands = [| RM 32; MMXReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -13978,7 +13913,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; MMXReg |] + Operands = [| RM 64; MMXReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -13989,7 +13924,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14000,7 +13935,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -14011,8 +13946,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14025,7 +13959,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14036,7 +13970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -14047,7 +13981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MM 64; MMXReg |] + Operands = [| MM 64; MMXReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15197,7 +15131,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15208,7 +15142,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15219,7 +15153,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15232,7 +15166,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 16; Reg(16, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15243,7 +15177,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(32, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15254,7 +15188,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 64; Reg(64, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15267,9 +15201,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16 - Reg(16, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 16; Reg(16, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15280,9 +15212,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32 - Reg(32, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 32; Reg(32, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15293,9 +15223,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64 - Reg(64, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 64; Reg(64, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15373,7 +15301,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15384,7 +15312,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15395,7 +15323,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15408,7 +15336,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 16; Reg(16, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15419,7 +15347,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(32, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15430,7 +15358,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 64; Reg(64, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15443,9 +15371,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16 - Reg(16, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 16; Reg(16, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15456,9 +15382,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32 - Reg(32, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 32; Reg(32, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15469,9 +15393,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64 - Reg(64, OprRegType.RegBit) - FixedReg(Register.CL) |] + Operands = [| RM 64; Reg(64, RegBit); FixedReg(Register.CL) |] OpEn = OpEn.MRC Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15572,7 +15494,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15583,7 +15505,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp5 OpReg - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -15649,7 +15571,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15660,7 +15582,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp0 OpReg - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15671,7 +15593,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15682,7 +15604,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp1 OpReg - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15715,7 +15637,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15737,7 +15659,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15748,7 +15670,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15759,7 +15681,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp2 OpReg - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15770,7 +15692,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15781,7 +15703,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp3 OpReg - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -15860,7 +15782,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15871,7 +15793,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15882,7 +15804,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15895,7 +15817,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15908,7 +15830,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15919,7 +15841,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15930,7 +15852,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15943,7 +15865,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(16, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15954,7 +15876,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] + Operands = [| Reg(32, RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15965,7 +15887,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] + Operands = [| Reg(64, RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -15978,7 +15900,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -15989,7 +15911,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16000,7 +15922,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16013,7 +15935,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(16, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16024,7 +15946,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] + Operands = [| Reg(32, RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16035,7 +15957,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] + Operands = [| Reg(64, RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16048,7 +15970,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(16, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16059,7 +15981,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 48 |] + Operands = [| Reg(32, RegBit); Mem 48 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16070,7 +15992,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 80 |] + Operands = [| Reg(64, RegBit); Mem 80 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16083,7 +16005,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(16, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16094,7 +16016,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(32, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16105,7 +16027,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(64, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16118,7 +16040,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(32, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16129,7 +16051,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(64, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16142,7 +16064,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16153,7 +16075,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16164,7 +16086,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16177,7 +16099,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16324,7 +16246,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16335,7 +16257,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16346,7 +16268,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16359,7 +16281,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16370,7 +16292,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16381,7 +16303,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16392,7 +16314,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16403,7 +16325,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16414,7 +16336,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16427,7 +16349,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16438,7 +16360,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16449,7 +16371,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16460,7 +16382,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(16, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16471,7 +16393,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16482,7 +16404,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16495,7 +16417,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(16, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16506,7 +16428,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(32, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16517,7 +16439,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(64, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16530,7 +16452,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(32, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16541,7 +16463,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(64, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16554,7 +16476,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 8; Reg(8, OprRegType.RegBit) |] + Operands = [| RM 8; Reg(8, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16567,7 +16489,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 16; Reg(16, OprRegType.RegBit) |] + Operands = [| RM 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16578,7 +16500,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(32, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16589,7 +16511,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(64, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16602,7 +16524,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16613,7 +16535,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16624,7 +16546,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMdiff(128, 64) Imm 8 |] OpEn = OpEn.RMI @@ -16637,7 +16559,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -16652,7 +16574,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16663,7 +16585,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16676,7 +16598,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; RMdiff(32, 16); Imm 8 |] + Operands = [| MMXReg(RegBit); RMdiff(32, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16687,9 +16609,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(32, 16) - Imm 8 |] + Operands = [| Reg(128, RegBit); RMdiff(32, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16702,7 +16622,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); MMXReg; Imm 8 |] + Operands = [| Reg(32, RegBit); MMXReg(RMBit); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16713,9 +16633,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16728,7 +16646,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16739,7 +16657,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16774,7 +16692,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -16785,7 +16703,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.R Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -16796,7 +16714,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(16, OprRegType.RMBit) |] + Operands = [| Reg(16, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16807,7 +16725,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16818,7 +16736,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -16829,7 +16747,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(16, OprRegType.RMBit) |] + Operands = [| Reg(16, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16840,7 +16758,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16851,7 +16769,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(64, RMBit) |] OpEn = OpEn.M Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -16862,7 +16780,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) |] + Operands = [| Reg(32, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -16941,7 +16859,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16952,7 +16870,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16965,7 +16883,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -16976,7 +16894,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -16989,7 +16907,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17000,7 +16918,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17013,7 +16931,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17024,7 +16942,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17037,7 +16955,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17048,7 +16966,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17061,7 +16979,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17072,7 +16990,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17085,7 +17003,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17096,7 +17014,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17109,7 +17027,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.OpRd) |] + Operands = [| Reg(32, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17120,7 +17038,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(64, OprRegType.OpRd) |] + Operands = [| Reg(64, OpRd) |] OpEn = OpEn.O Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -17133,7 +17051,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17144,7 +17062,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17157,7 +17075,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17168,7 +17086,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17181,7 +17099,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17192,7 +17110,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17205,7 +17123,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17216,7 +17134,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17229,7 +17147,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17240,7 +17158,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17253,7 +17171,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17264,7 +17182,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17277,7 +17195,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; Reg(128, OprRegType.RMBit) |] + Operands = [| MMXReg(RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17288,8 +17206,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17300,7 +17217,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); MMXReg |] + Operands = [| Reg(128, RegBit); MMXReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17313,7 +17230,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); MMXReg |] + Operands = [| Reg(32, RegBit); MMXReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17324,8 +17241,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17338,7 +17254,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17349,7 +17265,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17362,7 +17278,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17373,7 +17289,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17386,7 +17302,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17397,7 +17313,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17410,7 +17326,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17421,7 +17337,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17434,7 +17350,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17445,7 +17361,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17458,7 +17374,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17469,7 +17385,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17482,7 +17398,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17493,7 +17409,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17506,7 +17422,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17517,7 +17433,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17530,7 +17446,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17541,7 +17457,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17554,7 +17470,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17565,7 +17481,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17578,7 +17494,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17589,7 +17505,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17602,7 +17518,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17613,7 +17529,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17626,7 +17542,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17637,7 +17553,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17650,7 +17566,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17661,7 +17577,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17674,8 +17590,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17686,7 +17601,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17697,7 +17612,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17710,7 +17625,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17721,7 +17636,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; MMXReg |] + Operands = [| Mem 64; MMXReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17734,7 +17649,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17745,7 +17660,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17758,7 +17673,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17769,7 +17684,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17782,7 +17697,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17793,7 +17708,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17806,7 +17721,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17817,7 +17732,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17830,7 +17745,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17841,7 +17756,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17854,7 +17769,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17865,7 +17780,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17878,7 +17793,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17889,7 +17804,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17902,7 +17817,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17913,7 +17828,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17926,7 +17841,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(128, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17939,7 +17854,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17950,7 +17865,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17963,7 +17878,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17974,7 +17889,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17987,7 +17902,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -17998,7 +17913,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18011,7 +17926,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18022,7 +17937,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18035,7 +17950,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18046,7 +17961,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18059,7 +17974,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18070,7 +17985,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18083,8 +17998,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18095,7 +18009,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MMXReg |] + Operands = [| MMXReg(RegBit); MMXReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18108,7 +18022,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18119,7 +18033,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18132,7 +18046,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18143,7 +18057,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18156,7 +18070,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18167,7 +18081,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18180,7 +18094,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18191,7 +18105,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18204,7 +18118,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18215,7 +18129,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18228,7 +18142,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18239,7 +18153,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18252,7 +18166,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18263,7 +18177,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18276,7 +18190,7 @@ let (norTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18293,7 +18207,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18304,7 +18218,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18317,7 +18231,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18328,7 +18242,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18341,7 +18255,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18352,7 +18266,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18365,7 +18279,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18376,7 +18290,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18389,7 +18303,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18400,7 +18314,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18413,7 +18327,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18424,7 +18338,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18437,7 +18351,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18448,7 +18362,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18461,7 +18375,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18472,7 +18386,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18485,7 +18399,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18496,7 +18410,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18509,7 +18423,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18520,7 +18434,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18533,7 +18447,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18544,7 +18458,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18557,7 +18471,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18568,7 +18482,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18589,7 +18503,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18608,7 +18522,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18621,7 +18535,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM0 Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18636,7 +18550,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18657,7 +18571,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18668,7 +18582,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18681,7 +18595,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18692,7 +18606,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18705,7 +18619,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64 |] + Operands = [| MMXReg(RegBit); MM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18716,7 +18630,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18731,8 +18645,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18745,8 +18658,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18759,8 +18671,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18773,8 +18684,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18787,8 +18697,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18801,8 +18710,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18819,7 +18727,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18832,7 +18740,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18845,7 +18753,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18858,7 +18766,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18879,8 +18787,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18893,8 +18800,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18907,8 +18813,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18921,8 +18826,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18935,8 +18839,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18949,8 +18852,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18965,7 +18867,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18978,7 +18880,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -18991,7 +18893,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19004,7 +18906,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19017,7 +18919,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19030,7 +18932,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19043,7 +18945,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19056,7 +18958,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19069,7 +18971,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19082,7 +18984,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19095,7 +18997,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19236,7 +19138,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(32, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.NE Compat = CompatLegMode.Valid @@ -19247,7 +19149,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(64, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19398,7 +19300,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19411,7 +19313,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19424,7 +19326,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19437,7 +19339,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19450,7 +19352,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19463,7 +19365,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19478,7 +19380,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19557,7 +19459,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19570,7 +19472,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19581,7 +19483,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 384 |] + Operands = [| Reg(128, RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19592,8 +19494,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19606,7 +19507,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 384 |] + Operands = [| Reg(128, RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19617,7 +19518,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19630,7 +19531,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19641,7 +19542,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 512 |] + Operands = [| Reg(128, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19654,7 +19555,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 512 |] + Operands = [| Reg(128, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19665,7 +19566,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19710,7 +19611,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(32, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19721,7 +19622,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 8 |] + Operands = [| Reg(64, RegBit); RM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19732,7 +19633,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(16, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(16, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19743,7 +19644,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(32, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19754,7 +19655,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(64, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19767,7 +19668,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 16 |] + Operands = [| Reg(32, RegBit); RM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19778,7 +19679,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19789,7 +19690,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -19800,7 +19701,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 16; Reg(16, OprRegType.RegBit) |] + Operands = [| Mem 16; Reg(16, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19811,7 +19712,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19822,7 +19723,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19841,7 +19742,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19852,7 +19753,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19865,7 +19766,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19876,7 +19777,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19887,7 +19788,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(32, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19898,7 +19799,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(64, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19909,7 +19810,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19920,7 +19821,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19970,7 +19871,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; Reg(32, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -19981,7 +19882,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(64, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -19994,8 +19895,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20008,8 +19908,7 @@ let (norThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.NoModRM - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20050,7 +19949,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20063,7 +19962,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20076,7 +19975,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -20091,7 +19990,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMdiff(128, 64) Imm 8 |] OpEn = OpEn.RMI @@ -20106,7 +20005,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20119,7 +20018,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20132,7 +20031,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20145,7 +20044,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| MMXReg; MM 64; Imm 8 |] + Operands = [| MMXReg(RegBit); MM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20156,7 +20055,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20177,9 +20076,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 8) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 8); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20192,9 +20089,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 16) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 16); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20207,7 +20102,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20218,7 +20113,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 64; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -20231,7 +20126,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20260,9 +20155,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(32, 8) - Imm 8 |] + Operands = [| Reg(128, RegBit); RMdiff(32, 8); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20275,7 +20168,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -20290,7 +20183,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20301,7 +20194,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -20372,7 +20265,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20385,7 +20278,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20398,7 +20291,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20413,7 +20306,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20480,7 +20373,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20493,7 +20386,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20506,7 +20399,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20519,7 +20412,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20740,7 +20633,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20755,7 +20648,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20768,7 +20661,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20811,7 +20704,7 @@ let (norThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20935,9 +20828,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20948,7 +20841,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20959,9 +20852,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20972,7 +20865,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(128, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20983,7 +20876,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -20994,7 +20887,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21005,7 +20898,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21016,7 +20909,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21029,9 +20922,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit) + Reg(128, VVVV) + Reg(128, RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21042,7 +20935,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21053,9 +20946,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit) + Reg(128, VVVV) + Reg(128, RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21066,7 +20959,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21077,7 +20970,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21088,7 +20981,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21099,7 +20992,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21110,7 +21003,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21123,8 +21016,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21135,7 +21027,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21146,9 +21038,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21159,9 +21051,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RMBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.B Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21172,9 +21062,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21185,7 +21073,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21196,7 +21084,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21209,7 +21097,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21220,7 +21108,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21233,9 +21121,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21246,9 +21132,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21259,9 +21143,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21272,9 +21154,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21287,9 +21167,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21300,9 +21178,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21313,9 +21189,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21326,9 +21200,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21341,9 +21213,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21354,9 +21224,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21367,9 +21235,9 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21380,7 +21248,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21391,7 +21259,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21404,7 +21272,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21415,7 +21283,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21460,7 +21328,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21471,7 +21339,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21482,7 +21350,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21493,7 +21361,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21506,7 +21374,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21517,7 +21385,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21528,7 +21396,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21539,7 +21407,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21552,9 +21420,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21565,9 +21431,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21578,9 +21442,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21591,9 +21453,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -21606,7 +21466,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21617,7 +21477,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21628,7 +21488,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21639,7 +21499,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21652,7 +21512,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21663,7 +21523,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21674,7 +21534,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21685,7 +21545,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21698,7 +21558,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21709,7 +21569,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 64) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21720,7 +21580,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(32, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21731,7 +21591,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMdiff(128, 32) |] + Operands = [| Reg(64, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -21744,8 +21604,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21756,8 +21615,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21770,8 +21628,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21782,8 +21639,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22201,8 +22057,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22213,8 +22068,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22225,8 +22079,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22237,8 +22090,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22251,7 +22103,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22262,7 +22114,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22273,7 +22125,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22284,7 +22136,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22295,8 +22147,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22308,8 +22160,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22323,7 +22175,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22334,7 +22186,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22345,8 +22197,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22360,7 +22212,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22371,7 +22223,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22382,8 +22234,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22397,9 +22249,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22410,9 +22260,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22423,9 +22271,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22436,9 +22282,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22451,9 +22295,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22464,9 +22306,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22477,9 +22317,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22490,9 +22328,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22505,9 +22341,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22518,9 +22352,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22531,9 +22363,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22544,9 +22374,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22559,9 +22387,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22572,9 +22398,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22585,9 +22409,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22598,9 +22420,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22613,9 +22433,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22626,9 +22444,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22639,9 +22455,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22652,9 +22466,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22665,8 +22477,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22678,8 +22490,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22693,9 +22505,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22706,9 +22516,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22719,9 +22527,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22732,9 +22538,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22745,8 +22549,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22758,8 +22562,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22773,7 +22577,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22784,7 +22588,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(128, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22795,8 +22599,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22807,7 +22610,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22818,8 +22621,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22831,8 +22634,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22846,7 +22649,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22857,7 +22660,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22868,7 +22671,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22879,7 +22682,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22890,7 +22693,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22901,7 +22704,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22914,9 +22717,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22927,9 +22728,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22940,9 +22739,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22953,9 +22750,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -22966,8 +22761,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22979,8 +22774,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -22994,9 +22789,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23007,9 +22800,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23020,9 +22811,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23033,9 +22822,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23046,8 +22833,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23059,8 +22846,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23074,9 +22861,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23087,9 +22872,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23100,9 +22883,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23113,9 +22894,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23126,8 +22905,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23139,8 +22918,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23154,9 +22933,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23167,9 +22944,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23180,9 +22955,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23193,9 +22966,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23206,8 +22977,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23219,8 +22990,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -23234,9 +23005,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23247,9 +23016,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23262,9 +23029,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23275,9 +23040,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23290,9 +23053,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23303,9 +23064,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23318,9 +23077,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23331,9 +23088,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23346,9 +23101,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23359,9 +23112,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23374,9 +23125,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23387,9 +23136,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23402,9 +23149,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23415,9 +23160,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23430,9 +23173,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23443,9 +23184,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23458,9 +23197,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23471,9 +23208,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23486,9 +23221,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23499,9 +23232,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23514,9 +23245,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23527,9 +23256,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23542,9 +23269,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23555,9 +23280,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23570,9 +23293,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23583,9 +23304,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23598,9 +23317,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23611,9 +23328,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23626,7 +23341,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(128, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23637,7 +23352,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(128, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -23650,7 +23365,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23661,7 +23376,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23672,7 +23387,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23683,7 +23398,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23696,7 +23411,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23707,7 +23422,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23718,7 +23433,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23729,7 +23444,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23740,7 +23455,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23751,7 +23466,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23764,9 +23479,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23777,9 +23490,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23790,9 +23501,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23803,9 +23512,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23816,9 +23523,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23829,9 +23534,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23844,9 +23547,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23857,9 +23558,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23870,9 +23569,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23883,9 +23580,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23896,9 +23591,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23909,9 +23602,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23924,9 +23615,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23937,9 +23626,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23950,9 +23637,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23963,9 +23648,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23976,9 +23659,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23989,9 +23670,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24002,9 +23681,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(128, VVVV); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24015,9 +23692,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(256, VVVV); Reg(256, RMBit); Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24030,9 +23705,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24043,9 +23716,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24058,9 +23729,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24071,9 +23740,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24086,9 +23753,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24099,9 +23764,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24146,9 +23809,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24159,9 +23820,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24172,9 +23831,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24185,9 +23842,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24200,9 +23855,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24213,9 +23866,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24226,9 +23877,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24239,9 +23888,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24254,7 +23901,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24265,7 +23912,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -24276,8 +23923,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24290,7 +23936,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24301,7 +23947,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24312,7 +23958,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24323,7 +23969,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24460,7 +24106,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24471,7 +24117,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24482,7 +24128,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(64, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(64, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24493,7 +24139,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24506,7 +24152,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24517,7 +24163,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24528,7 +24174,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(64, RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24539,7 +24185,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24754,8 +24400,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -24768,8 +24414,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -24782,8 +24428,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -24796,8 +24442,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -24810,8 +24456,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -24824,8 +24470,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -24842,8 +24488,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(32, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -24858,9 +24504,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24873,8 +24517,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -24887,8 +24531,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -24901,8 +24545,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -24915,8 +24559,8 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -24949,9 +24593,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24962,9 +24604,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24975,9 +24615,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24988,9 +24626,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25003,9 +24639,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25016,9 +24650,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25031,9 +24663,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25044,9 +24674,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25059,9 +24687,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25072,9 +24698,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25087,9 +24711,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25100,9 +24722,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25115,9 +24735,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25128,9 +24746,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25143,8 +24759,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25157,8 +24772,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25169,8 +24783,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(32, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25183,9 +24796,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25196,9 +24807,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25211,9 +24820,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25224,9 +24831,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25239,9 +24844,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25252,9 +24855,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25267,9 +24868,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25280,9 +24879,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25295,9 +24892,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25308,9 +24903,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25323,9 +24916,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25336,9 +24927,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25351,9 +24940,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25364,9 +24951,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25379,9 +24964,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25392,9 +24975,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25407,9 +24988,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25420,9 +24999,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25435,9 +25012,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25448,9 +25023,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25463,9 +25036,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25476,9 +25047,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25491,9 +25060,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25504,9 +25071,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25519,9 +25084,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25532,9 +25095,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25547,9 +25108,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25560,9 +25119,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25575,8 +25132,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25587,7 +25143,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25598,7 +25154,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25609,7 +25165,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(128, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25620,7 +25176,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25631,7 +25187,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(128, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25644,7 +25200,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25655,7 +25211,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25668,9 +25224,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25681,9 +25235,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25696,9 +25248,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25709,9 +25259,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25724,9 +25272,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25737,9 +25283,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25752,9 +25296,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25765,9 +25307,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25780,9 +25320,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25793,9 +25331,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25808,9 +25344,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25821,9 +25355,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25836,9 +25368,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25849,9 +25379,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25864,9 +25392,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25877,9 +25403,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25892,7 +25416,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25903,7 +25427,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25916,9 +25440,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25929,9 +25451,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25944,9 +25464,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25957,9 +25475,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25972,9 +25488,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -25985,9 +25499,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26000,9 +25512,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26013,9 +25523,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26028,9 +25536,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26041,9 +25547,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26056,9 +25560,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26069,9 +25571,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26084,8 +25584,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26098,9 +25597,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26111,9 +25608,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26126,9 +25621,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26139,9 +25632,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26154,9 +25645,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26167,9 +25656,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26182,9 +25669,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26195,9 +25680,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26210,9 +25693,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26223,9 +25704,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26238,9 +25717,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26251,9 +25728,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26266,9 +25741,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26279,9 +25752,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26300,9 +25771,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26313,9 +25782,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26328,9 +25795,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26341,9 +25806,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26356,9 +25819,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26369,9 +25830,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26384,9 +25843,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26397,9 +25854,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26412,9 +25867,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26425,9 +25878,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26440,9 +25891,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26453,9 +25902,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26468,9 +25915,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26481,9 +25926,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26496,9 +25939,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26509,9 +25950,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26524,9 +25963,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26537,9 +25974,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26552,9 +25987,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26565,9 +25998,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26580,9 +26011,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26593,9 +26022,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26608,9 +26035,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26621,9 +26046,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26636,9 +26059,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26649,9 +26070,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26664,9 +26083,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26677,9 +26094,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26692,7 +26107,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26703,7 +26118,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26716,7 +26131,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26727,7 +26142,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26746,8 +26161,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26758,7 +26172,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26775,9 +26189,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26790,7 +26202,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26801,7 +26213,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26814,7 +26226,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(128, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26825,7 +26237,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(256, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26836,8 +26248,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26848,8 +26259,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26862,7 +26272,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(256, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26873,8 +26283,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26887,7 +26296,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26902,7 +26311,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26913,7 +26322,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26926,7 +26335,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26937,7 +26346,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26950,7 +26359,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26961,7 +26370,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26976,8 +26385,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -26988,7 +26396,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27001,8 +26409,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27013,8 +26420,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27027,8 +26433,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27039,8 +26444,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27053,8 +26457,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27065,7 +26468,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27078,8 +26481,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27090,8 +26492,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27104,8 +26505,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27116,7 +26516,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27133,9 +26533,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27146,9 +26544,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27161,9 +26557,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27174,9 +26568,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27189,7 +26581,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27200,7 +26592,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27213,9 +26605,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27226,9 +26616,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27241,9 +26629,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27254,9 +26640,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - Mem 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27269,9 +26653,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27282,9 +26664,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - Mem 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27297,9 +26677,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128 - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, VVVV); Reg(128, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27310,9 +26688,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256 - Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, VVVV); Reg(256, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27325,9 +26701,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128 - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, VVVV); Reg(128, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27338,9 +26712,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256 - Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, VVVV); Reg(256, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27353,8 +26725,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27365,7 +26736,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27378,8 +26749,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27390,8 +26760,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27404,8 +26773,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27416,8 +26784,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27430,8 +26797,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27442,7 +26808,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27455,8 +26821,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27467,8 +26832,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27481,8 +26845,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27493,7 +26856,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27506,9 +26869,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27521,9 +26882,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27534,9 +26893,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27549,9 +26906,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27562,9 +26917,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27577,9 +26930,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27590,9 +26941,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27605,9 +26954,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27618,9 +26965,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27633,9 +26978,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27646,9 +26989,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27661,9 +27002,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27674,9 +27013,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27689,9 +27026,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27702,9 +27037,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27717,9 +27050,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27730,9 +27061,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27745,9 +27074,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27758,9 +27085,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27773,9 +27098,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27786,9 +27109,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27801,7 +27122,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27820,9 +27141,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27833,9 +27152,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27846,9 +27163,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27859,9 +27174,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27874,9 +27187,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27887,9 +27198,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27902,9 +27211,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27915,9 +27222,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27928,9 +27233,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27941,9 +27244,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -27991,7 +27292,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) |] + Operands = [| Reg(1024, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28006,7 +27307,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(1024, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28017,7 +27318,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit); Mem 0 |] + Operands = [| Reg(1024, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28028,7 +27329,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 0; Reg(1024, OprRegType.RegBit) |] + Operands = [| Mem 0; Reg(1024, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28049,9 +27350,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28062,9 +27361,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28075,9 +27372,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28088,9 +27383,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28101,9 +27394,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28114,9 +27405,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28127,9 +27416,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28140,9 +27427,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28155,9 +27440,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28168,9 +27451,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28181,9 +27462,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28194,9 +27473,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28207,9 +27484,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28220,9 +27495,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28233,9 +27506,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28246,9 +27517,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28261,9 +27530,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28274,9 +27541,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28289,9 +27554,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28302,9 +27565,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28325,8 +27586,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28337,8 +27597,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28351,8 +27610,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28363,8 +27621,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28377,7 +27634,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28392,9 +27649,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28405,9 +27662,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28422,9 +27679,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28435,9 +27692,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28448,9 +27705,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28461,9 +27718,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(1024, OprRegType.RegBit) - Reg(1024, OprRegType.RMBit) - Reg(1024, OprRegType.VVVV) |] + Operands = [| Reg(1024, RegBit) + Reg(1024, RMBit) + Reg(1024, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -28514,7 +27771,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28525,7 +27782,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(128, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28548,7 +27805,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMdiff(128, 8) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28559,7 +27816,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RMdiff(128, 8) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28572,8 +27829,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28584,8 +27840,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28634,9 +27889,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28647,9 +27900,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - Mem 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28660,9 +27911,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28673,9 +27922,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - Mem 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); Mem 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28690,9 +27937,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128 - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, VVVV); Reg(128, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28703,9 +27948,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256 - Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, VVVV); Reg(256, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28716,9 +27959,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128 - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, VVVV); Reg(128, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28729,9 +27970,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256 - Reg(256, OprRegType.VVVV) - Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, VVVV); Reg(256, RegBit) |] OpEn = OpEn.MVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28746,9 +27985,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 32 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28759,9 +27998,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 32 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28772,9 +28011,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 32 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28785,9 +28024,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 32 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28800,9 +28039,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28813,9 +28052,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28826,9 +28065,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28839,9 +28078,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 64 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28854,9 +28093,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 32 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28867,9 +28106,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 32 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28880,9 +28119,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 32 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28893,9 +28132,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 32 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28908,9 +28147,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28921,9 +28160,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) MemVSIB 64 - Reg(256, OprRegType.VVVV) |] + Reg(256, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28934,9 +28173,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28947,9 +28186,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) MemVSIB 64 - Reg(128, OprRegType.VVVV) |] + Reg(128, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28966,9 +28205,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28979,9 +28216,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -28992,9 +28227,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29005,9 +28238,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29020,9 +28251,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29033,9 +28262,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29046,9 +28273,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29059,9 +28284,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29074,9 +28297,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29087,9 +28308,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29100,9 +28319,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29113,9 +28330,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29128,8 +28343,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29141,8 +28356,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29156,9 +28371,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29169,9 +28382,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29182,9 +28393,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29195,9 +28404,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29210,8 +28417,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29223,8 +28430,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29238,9 +28445,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29251,9 +28456,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29264,9 +28467,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29277,9 +28478,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29292,8 +28491,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29305,8 +28504,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29320,9 +28519,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29333,9 +28530,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29346,9 +28541,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29359,9 +28552,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29374,8 +28565,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29387,8 +28578,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29414,9 +28605,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29427,9 +28616,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29440,9 +28627,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29453,9 +28638,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29468,9 +28651,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29481,9 +28662,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29494,9 +28673,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29507,9 +28684,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29522,9 +28697,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29535,9 +28708,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29548,9 +28719,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29561,9 +28730,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29576,8 +28743,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29589,8 +28756,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29604,9 +28771,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29617,9 +28782,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29630,9 +28793,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29643,9 +28804,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29658,8 +28817,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29671,8 +28830,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29686,9 +28845,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29699,9 +28856,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29712,9 +28867,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29725,9 +28878,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29740,8 +28891,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29753,8 +28904,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29768,9 +28919,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29781,9 +28930,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29794,9 +28941,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29807,9 +28952,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29822,8 +28965,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29835,8 +28978,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -29850,7 +28993,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29861,7 +29004,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29872,7 +29015,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29883,7 +29026,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29894,7 +29037,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29905,7 +29048,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29916,7 +29059,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29927,7 +29070,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29940,7 +29083,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(128, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29951,7 +29094,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(256, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29962,7 +29105,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(128, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29973,7 +29116,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); Mem 16 |] + Operands = [| Reg(256, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -29990,9 +29133,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30003,9 +29144,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30018,9 +29157,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30031,9 +29168,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30046,9 +29181,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30059,9 +29192,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30072,9 +29203,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30085,9 +29214,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30100,9 +29227,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30113,9 +29238,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30126,9 +29249,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30139,9 +29260,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30154,9 +29273,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30167,9 +29284,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30180,9 +29295,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30193,9 +29306,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30208,8 +29319,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30221,8 +29332,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30236,9 +29347,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30249,9 +29358,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30262,9 +29369,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30275,9 +29380,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30290,8 +29393,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30303,8 +29406,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30318,9 +29421,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30331,9 +29432,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30344,9 +29443,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30357,9 +29454,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30372,8 +29467,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30385,8 +29480,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30400,9 +29495,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30413,9 +29506,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30426,9 +29517,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30439,9 +29528,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30454,8 +29541,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30467,8 +29554,8 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -30504,9 +29591,9 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30519,8 +29606,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30533,8 +29619,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30549,9 +29634,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30562,9 +29645,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30581,9 +29662,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30594,9 +29673,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30607,9 +29684,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30620,9 +29695,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30633,9 +29706,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30646,9 +29717,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30661,9 +29730,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30674,9 +29741,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30687,9 +29752,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30700,9 +29763,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30713,9 +29774,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30726,9 +29785,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30753,9 +29810,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30766,9 +29821,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30779,9 +29832,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30792,9 +29843,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30805,9 +29854,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30818,9 +29865,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30833,7 +29878,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30846,9 +29891,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30859,9 +29902,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30874,9 +29915,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30887,9 +29926,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30902,9 +29939,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30915,9 +29950,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30930,9 +29963,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30943,9 +29974,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -30958,9 +29987,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30971,9 +29998,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30986,9 +30011,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -30999,9 +30022,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31014,9 +30035,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31027,9 +30046,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31042,9 +30059,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31055,9 +30070,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31070,9 +30083,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31083,9 +30094,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31098,9 +30107,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31111,9 +30118,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31126,9 +30131,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31139,9 +30142,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31154,9 +30155,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31167,9 +30166,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31182,9 +30179,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31195,9 +30190,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31210,9 +30203,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31223,9 +30214,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31238,9 +30227,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31251,9 +30238,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31266,9 +30251,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31279,9 +30262,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31294,9 +30275,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31307,9 +30286,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31322,9 +30299,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31335,9 +30310,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31350,9 +30323,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31363,9 +30334,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31378,9 +30347,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 32 - Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) |] + Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31391,9 +30358,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Mem 64 - Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) |] + Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31410,9 +30375,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(32, RegBit); Reg(32, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31423,9 +30386,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(64, RegBit); Reg(64, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31438,7 +30399,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] + Operands = [| Reg(32, VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31449,7 +30410,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] + Operands = [| Reg(64, VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31460,7 +30421,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] + Operands = [| Reg(32, VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31471,7 +30432,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] + Operands = [| Reg(64, VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31482,7 +30443,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(32, OprRegType.VVVV); RM 32 |] + Operands = [| Reg(32, VVVV); RM 32 |] OpEn = OpEn.VM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31493,7 +30454,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(64, OprRegType.VVVV); RM 64 |] + Operands = [| Reg(64, VVVV); RM 64 |] OpEn = OpEn.VM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31508,9 +30469,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - RM 32 - Reg(32, OprRegType.VVVV) |] + Operands = [| Reg(32, RegBit); RM 32; Reg(32, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31521,9 +30480,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - RM 64 - Reg(64, OprRegType.VVVV) |] + Operands = [| Reg(64, RegBit); RM 64; Reg(64, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31534,9 +30491,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(32, RegBit); Reg(32, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31547,9 +30502,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(64, RegBit); Reg(64, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31560,9 +30513,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(32, RegBit); Reg(32, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31573,9 +30524,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(64, RegBit); Reg(64, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31588,9 +30537,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(32, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(32, RegBit); Reg(32, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31601,9 +30548,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - Reg(64, OprRegType.VVVV) - RM 64 |] + Operands = [| Reg(64, RegBit); Reg(64, VVVV); RM 64 |] OpEn = OpEn.RVM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31616,9 +30561,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - RM 32 - Reg(32, OprRegType.VVVV) |] + Operands = [| Reg(32, RegBit); RM 32; Reg(32, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31629,9 +30572,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - RM 64 - Reg(64, OprRegType.VVVV) |] + Operands = [| Reg(64, RegBit); RM 64; Reg(64, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31642,9 +30583,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - RM 32 - Reg(32, OprRegType.VVVV) |] + Operands = [| Reg(32, RegBit); RM 32; Reg(32, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31655,9 +30594,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - RM 32 - Reg(32, OprRegType.VVVV) |] + Operands = [| Reg(32, RegBit); RM 32; Reg(32, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31668,9 +30605,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - RM 32 - Reg(32, OprRegType.VVVV) |] + Operands = [| Reg(32, RegBit); RM 32; Reg(32, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31681,9 +30616,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - RM 64 - Reg(64, OprRegType.VVVV) |] + Operands = [| Reg(64, RegBit); RM 64; Reg(64, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31694,9 +30627,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - RM 64 - Reg(64, OprRegType.VVVV) |] + Operands = [| Reg(64, RegBit); RM 64; Reg(64, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31707,9 +30638,7 @@ let (vexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit) - RM 64 - Reg(64, OprRegType.VVVV) |] + Operands = [| Reg(64, RegBit); RM 64; Reg(64, VVVV) |] OpEn = OpEn.RMV Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -31742,7 +30671,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31755,7 +30684,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31768,8 +30697,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -31782,8 +30711,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -31800,7 +30729,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31811,7 +30740,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31824,7 +30753,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31835,7 +30764,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31848,8 +30777,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -31866,7 +30795,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31877,7 +30806,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31890,7 +30819,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31901,7 +30830,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31914,8 +30843,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -31930,8 +30859,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -31946,8 +30875,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -31960,8 +30889,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -31976,8 +30905,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -31990,8 +30919,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32006,8 +30935,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32020,8 +30949,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32036,8 +30965,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32050,8 +30979,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32074,9 +31003,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 8) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 8); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32089,9 +31016,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 16) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 16); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32104,7 +31029,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32115,7 +31040,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 64; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -32128,7 +31053,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32141,8 +31066,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32157,7 +31082,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32177,7 +31102,7 @@ let (vexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) + Reg(128, RegBit) Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -32189,7 +31114,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32206,8 +31131,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(32, 8) Imm 8 |] OpEn = OpEn.RVMI @@ -32222,8 +31147,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -32238,8 +31163,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 32 Imm 8 |] OpEn = OpEn.RVMI @@ -32252,8 +31177,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 64 Imm 8 |] OpEn = OpEn.RVMI @@ -32398,8 +31323,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32414,7 +31339,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32439,8 +31364,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32453,8 +31378,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32469,8 +31394,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32485,8 +31410,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32499,8 +31424,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32517,8 +31442,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32531,8 +31456,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32549,8 +31474,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32571,10 +31496,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 - Reg(128, OprRegType.IS4) |] + Reg(128, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32585,10 +31510,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 - Reg(256, OprRegType.IS4) |] + Reg(256, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32601,10 +31526,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 - Reg(128, OprRegType.IS4) |] + Reg(128, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32615,10 +31540,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 - Reg(256, OprRegType.IS4) |] + Reg(256, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32631,10 +31556,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 - Reg(128, OprRegType.IS4) |] + Reg(128, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32645,10 +31570,10 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 - Reg(256, OprRegType.IS4) |] + Reg(256, IS4) |] OpEn = OpEn.RVMR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32699,7 +31624,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32712,7 +31637,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32725,7 +31650,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32738,7 +31663,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -32963,8 +31888,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -32977,8 +31902,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -32993,8 +31918,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -33007,8 +31932,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -33051,8 +31976,8 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -33067,7 +31992,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33112,7 +32037,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RM 32; Imm 8 |] + Operands = [| Reg(32, RegBit); RM 32; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33123,7 +32048,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RM 64; Imm 8 |] + Operands = [| Reg(64, RegBit); RM 64; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -33202,9 +32127,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33215,7 +32140,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 64 |] + Operands = [| Reg(128, RegBit); Mem 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33226,9 +32151,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33239,7 +32164,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 32 |] + Operands = [| Reg(128, RegBit); Mem 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33250,7 +32175,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33261,7 +32186,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33272,7 +32197,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33283,7 +32208,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33294,7 +32219,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33305,7 +32230,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33318,9 +32243,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit) + Reg(128, VVVV) + Reg(128, RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33331,7 +32256,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33342,9 +32267,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit) + Reg(128, VVVV) + Reg(128, RegBit) |] OpEn = OpEn.E Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33355,7 +32280,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 32; Reg(128, RegBit) |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33366,7 +32291,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33377,7 +32302,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33388,7 +32313,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33399,7 +32324,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33410,7 +32335,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33421,7 +32346,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33434,8 +32359,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33446,7 +32370,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33457,7 +32381,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33468,9 +32392,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33481,9 +32405,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33494,9 +32416,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33507,7 +32427,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33518,7 +32438,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33529,7 +32449,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33542,7 +32462,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33553,7 +32473,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33566,8 +32486,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33579,8 +32499,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33592,8 +32512,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33605,8 +32525,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33618,8 +32538,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33631,8 +32551,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33646,8 +32566,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33659,8 +32579,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33672,8 +32592,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33685,8 +32605,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33698,8 +32618,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33711,8 +32631,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -33726,9 +32646,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33739,9 +32657,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 64 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 64 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33752,9 +32668,9 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) + Reg(128, RMBit) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33765,7 +32681,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33776,7 +32692,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33787,7 +32703,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33800,7 +32716,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33811,7 +32727,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33856,7 +32772,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33867,7 +32783,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33878,7 +32794,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33889,7 +32805,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33900,7 +32816,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33911,7 +32827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33924,7 +32840,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33935,7 +32851,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33946,7 +32862,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33957,7 +32873,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33968,7 +32884,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33979,7 +32895,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -33992,9 +32908,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34005,8 +32919,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34018,8 +32932,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(32, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34031,8 +32945,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34046,7 +32960,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34057,7 +32971,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34068,7 +32982,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34079,7 +32993,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34090,7 +33004,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34101,7 +33015,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34114,7 +33028,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(32, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34125,7 +33039,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(64, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34136,7 +33050,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(32, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34147,7 +33061,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(64, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34160,7 +33074,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 64) |] + Operands = [| Reg(32, RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34171,7 +33085,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 64) |] + Operands = [| Reg(64, RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34182,7 +33096,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 32) |] + Operands = [| Reg(32, RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34193,7 +33107,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 32) |] + Operands = [| Reg(64, RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -34206,7 +33120,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(128, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34217,7 +33131,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(128, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34230,7 +33144,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(128, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34241,7 +33155,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(128, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34320,8 +33234,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34332,8 +33245,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34344,7 +33256,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -34356,8 +33268,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34368,8 +33279,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34380,7 +33290,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -34392,8 +33302,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34405,8 +33315,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34424,8 +33334,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34437,8 +33347,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34450,8 +33360,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34463,8 +33373,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34476,8 +33386,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34489,8 +33399,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34504,8 +33414,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34517,8 +33427,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34530,8 +33440,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34543,8 +33453,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34556,8 +33466,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34569,8 +33479,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34584,8 +33494,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34597,8 +33507,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34610,8 +33520,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34623,8 +33533,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34636,8 +33546,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34649,8 +33559,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34664,8 +33574,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34677,8 +33587,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34690,8 +33600,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34703,8 +33613,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34716,8 +33626,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34729,8 +33639,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34744,8 +33654,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34757,8 +33667,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34770,8 +33680,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34783,8 +33693,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34796,8 +33706,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34809,8 +33719,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34822,8 +33732,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34835,8 +33745,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34850,8 +33760,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34863,8 +33773,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34876,8 +33786,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34889,8 +33799,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34902,8 +33812,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34915,8 +33825,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34928,8 +33838,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34941,8 +33851,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -34956,8 +33866,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34968,8 +33877,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34980,7 +33888,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -34992,8 +33900,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35004,8 +33911,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35016,7 +33922,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -35028,8 +33934,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35041,8 +33947,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35056,8 +33962,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35068,8 +33973,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35080,7 +33984,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -35092,8 +33996,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35104,8 +34007,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35116,7 +34018,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -35128,8 +34030,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35140,8 +34041,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35152,7 +34052,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -35164,8 +34064,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35176,8 +34075,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35188,7 +34086,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -35202,8 +34100,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35215,8 +34113,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35228,8 +34126,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35241,8 +34139,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35254,8 +34152,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35267,8 +34165,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35280,8 +34178,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35293,8 +34191,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35308,8 +34206,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35321,8 +34219,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35334,8 +34232,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35347,8 +34245,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35360,8 +34258,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35373,8 +34271,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35386,8 +34284,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35399,8 +34297,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35414,8 +34312,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35427,8 +34325,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35440,8 +34338,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35453,8 +34351,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35466,8 +34364,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35479,8 +34377,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35492,8 +34390,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35505,8 +34403,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35520,8 +34418,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35533,8 +34431,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35546,8 +34444,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35559,8 +34457,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35572,8 +34470,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35585,8 +34483,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35598,8 +34496,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35611,8 +34509,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35626,9 +34524,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35639,9 +34535,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35652,9 +34546,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35667,9 +34559,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35680,9 +34570,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35693,9 +34581,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35708,8 +34594,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35721,8 +34607,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35734,8 +34620,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35749,9 +34635,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35762,9 +34646,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35775,9 +34657,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35790,7 +34670,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35801,7 +34681,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35812,7 +34692,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35825,7 +34705,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35836,7 +34716,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35847,7 +34727,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35861,7 +34741,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35874,7 +34754,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35887,7 +34767,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -35901,9 +34781,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35914,9 +34792,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35927,9 +34803,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35942,9 +34816,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35955,9 +34827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35968,9 +34838,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35983,9 +34851,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35996,9 +34862,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36009,9 +34873,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36024,8 +34886,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36037,8 +34899,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36050,8 +34912,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36065,8 +34927,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36078,8 +34940,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36091,8 +34953,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36106,8 +34968,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36119,8 +34981,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36132,8 +34994,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36147,8 +35009,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36160,8 +35022,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36173,8 +35035,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -36188,7 +35050,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 32 |] + Operands = [| Reg(128, RegBit); RM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36199,7 +35061,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 64 |] + Operands = [| Reg(128, RegBit); RM 64 |] OpEn = OpEn.RM Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -36212,7 +35074,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36223,7 +35085,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36234,7 +35096,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36245,7 +35107,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36256,7 +35118,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36267,7 +35129,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36278,7 +35140,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36289,7 +35151,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36300,7 +35162,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36311,7 +35173,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36322,7 +35184,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36333,7 +35195,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36344,7 +35206,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36355,7 +35217,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36366,7 +35228,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36377,7 +35239,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36388,7 +35250,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36399,7 +35261,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36412,7 +35274,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -36425,7 +35287,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RMI @@ -36438,7 +35300,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RMI @@ -36451,7 +35313,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36462,7 +35324,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36473,7 +35335,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512; Imm 8 |] + Operands = [| Reg(512, RegBit); RM 512; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36484,7 +35346,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128; Imm 8 |] + Operands = [| Reg(128, RegBit); RM 128; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36495,7 +35357,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256; Imm 8 |] + Operands = [| Reg(256, RegBit); RM 256; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36506,7 +35368,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512; Imm 8 |] + Operands = [| Reg(512, RegBit); RM 512; Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36519,7 +35381,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] + Operands = [| Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36530,7 +35392,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] + Operands = [| Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36541,7 +35403,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] + Operands = [| Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36552,7 +35414,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] + Operands = [| Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36563,7 +35425,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] + Operands = [| Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36574,7 +35436,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] + Operands = [| Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36585,7 +35447,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] + Operands = [| Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36596,7 +35458,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] + Operands = [| Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36607,7 +35469,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] + Operands = [| Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36620,7 +35482,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36633,7 +35495,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36646,7 +35508,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36659,7 +35521,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36672,7 +35534,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36685,7 +35547,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36698,7 +35560,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36711,7 +35573,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36724,7 +35586,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp4 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36737,7 +35599,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36750,7 +35612,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36763,7 +35625,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36776,7 +35638,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36789,7 +35651,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36802,7 +35664,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36815,7 +35677,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36828,7 +35690,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36841,7 +35703,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp1 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36854,7 +35716,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36867,7 +35729,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36880,7 +35742,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36893,7 +35755,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36906,7 +35768,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.VMI @@ -36919,7 +35781,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp0 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36934,7 +35796,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] + Operands = [| Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36945,7 +35807,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] + Operands = [| Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36956,7 +35818,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp7 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] + Operands = [| Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -36967,7 +35829,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36980,7 +35842,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.VMI @@ -36993,7 +35855,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp6 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.VMI @@ -37006,7 +35868,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV); RM 128; Imm 8 |] + Operands = [| Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37017,7 +35879,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV); RM 256; Imm 8 |] + Operands = [| Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37028,7 +35890,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp3 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV); RM 512; Imm 8 |] + Operands = [| Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.VMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37039,7 +35901,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.VMI @@ -37052,7 +35914,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.VMI @@ -37065,7 +35927,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRMOp2 OpRegMem - Operands = [| Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.VMI @@ -37080,7 +35942,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37091,7 +35953,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37102,7 +35964,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37115,7 +35977,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37126,7 +35988,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37137,7 +35999,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37151,7 +36013,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37164,7 +36026,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37177,7 +36039,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37193,8 +36055,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37205,8 +36066,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37217,7 +36077,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37229,8 +36089,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37241,8 +36100,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37253,7 +36111,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37265,8 +36123,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37277,8 +36134,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37289,7 +36145,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37301,8 +36157,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37313,8 +36168,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37325,7 +36179,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37337,7 +36191,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(32, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37348,7 +36202,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 64) |] + Operands = [| Reg(64, RegBit); RMSae(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37359,7 +36213,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(32, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37370,7 +36224,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMSae(128, 32) |] + Operands = [| Reg(64, RegBit); RMSae(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37383,8 +36237,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37395,8 +36248,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37407,7 +36259,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37419,8 +36271,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37431,8 +36282,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37443,7 +36293,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37455,8 +36305,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37467,8 +36316,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37479,7 +36327,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37491,8 +36339,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37503,8 +36350,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37515,7 +36361,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37527,7 +36373,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 64) |] + Operands = [| Reg(32, RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37538,7 +36384,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 64) |] + Operands = [| Reg(64, RegBit); RMEr(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37549,7 +36395,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit); RMEr(128, 32) |] + Operands = [| Reg(32, RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37560,7 +36406,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, OprRegType.RegBit); RMEr(128, 32) |] + Operands = [| Reg(64, RegBit); RMEr(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37573,8 +36419,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37585,8 +36430,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37597,7 +36441,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37609,8 +36453,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37621,8 +36464,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37633,7 +36475,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37645,8 +36487,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37657,8 +36498,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37669,8 +36509,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37681,8 +36520,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37693,8 +36531,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37705,7 +36542,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37717,8 +36554,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37729,8 +36565,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37741,7 +36576,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37753,8 +36588,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37765,8 +36599,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37777,7 +36610,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37791,8 +36624,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37803,8 +36635,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37815,7 +36646,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37827,8 +36658,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37839,8 +36669,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37851,7 +36680,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -37863,9 +36692,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 32 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 32 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37876,8 +36703,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37889,8 +36716,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(32, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37902,8 +36729,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(64, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -37921,7 +36748,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 32; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37932,7 +36759,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 64; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -37943,8 +36770,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37957,7 +36783,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37968,7 +36794,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37979,7 +36805,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -37990,7 +36816,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38001,7 +36827,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38012,7 +36838,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38023,7 +36849,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38034,7 +36860,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38045,7 +36871,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38056,7 +36882,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38067,7 +36893,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38078,7 +36904,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38089,7 +36915,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38100,7 +36926,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38111,7 +36937,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38122,7 +36948,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38133,7 +36959,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38144,7 +36970,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38290,7 +37116,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38304,7 +37130,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38318,7 +37144,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38332,7 +37158,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38346,7 +37172,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38360,7 +37186,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38374,7 +37200,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38388,7 +37214,7 @@ let (evexTwo: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38405,8 +37231,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(32, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -38421,9 +37247,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) - Imm 8 |] + Operands = [| Reg(32, RegBit); Reg(128, RMBit); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38436,8 +37260,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38450,8 +37274,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38464,8 +37288,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -38478,8 +37302,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38492,8 +37316,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38506,8 +37330,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -38542,9 +37366,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38555,9 +37377,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38568,9 +37388,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38583,9 +37401,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38596,9 +37412,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38609,9 +37423,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38624,9 +37436,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38637,9 +37447,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38650,9 +37458,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38665,8 +37471,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38678,8 +37484,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38691,8 +37497,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38706,9 +37512,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38719,9 +37523,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38732,9 +37534,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38747,8 +37547,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38763,9 +37562,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38776,9 +37573,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38789,9 +37584,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38804,9 +37597,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38817,9 +37608,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38830,9 +37619,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38845,9 +37632,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38858,9 +37643,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38871,9 +37654,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38886,8 +37667,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38899,8 +37680,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38912,8 +37693,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38925,8 +37706,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38938,8 +37719,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38951,8 +37732,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -38966,9 +37747,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38979,9 +37758,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -38992,9 +37769,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39007,9 +37782,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39020,9 +37793,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39033,9 +37804,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39048,9 +37817,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39061,9 +37828,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39074,9 +37839,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39089,8 +37852,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39102,8 +37865,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39115,8 +37878,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39128,8 +37891,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39141,8 +37904,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39154,8 +37917,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39169,9 +37932,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39182,9 +37943,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39195,9 +37954,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39210,9 +37967,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39223,9 +37978,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39236,9 +37989,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39251,9 +38002,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39264,9 +38013,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39277,9 +38024,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39290,9 +38035,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39303,9 +38046,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39316,9 +38057,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39331,9 +38070,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39344,9 +38081,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39357,9 +38092,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39372,9 +38105,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39385,9 +38116,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39398,9 +38127,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39413,9 +38140,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39426,9 +38151,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39439,9 +38162,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39454,8 +38175,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 64, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 64, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39466,8 +38186,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39478,8 +38197,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39490,8 +38208,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39502,8 +38219,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39514,7 +38230,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -39526,8 +38242,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39538,8 +38253,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39550,7 +38264,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -39562,8 +38276,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39574,8 +38287,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39586,7 +38298,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -39600,7 +38312,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39611,7 +38323,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39622,7 +38334,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39635,9 +38347,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39648,9 +38358,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39661,9 +38369,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39676,9 +38382,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39689,9 +38393,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39702,9 +38404,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39717,9 +38417,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39730,9 +38428,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39743,9 +38439,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39758,8 +38452,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39771,8 +38465,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39784,8 +38478,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39797,8 +38491,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39810,8 +38504,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39823,8 +38517,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39838,9 +38532,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39851,9 +38543,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39864,9 +38554,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39879,9 +38567,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39892,9 +38578,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39905,9 +38589,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39920,9 +38602,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39933,9 +38613,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39946,9 +38624,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -39961,8 +38637,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39974,8 +38650,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -39987,8 +38663,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40000,8 +38676,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40013,8 +38689,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40026,8 +38702,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40043,9 +38719,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40056,9 +38730,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40069,9 +38741,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40084,9 +38754,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40097,9 +38765,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40110,9 +38776,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40125,9 +38789,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40138,9 +38800,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40151,9 +38811,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 128 |] OpEn = OpEn.G Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40166,8 +38824,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40179,8 +38837,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40192,8 +38850,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40207,9 +38865,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40220,9 +38876,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40233,9 +38887,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40248,9 +38900,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40261,9 +38911,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40274,9 +38922,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40291,9 +38937,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40304,9 +38948,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40317,9 +38959,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40332,9 +38972,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40345,9 +38983,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40358,9 +38994,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40373,8 +39007,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40386,8 +39020,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40399,8 +39033,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40414,8 +39048,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40427,8 +39061,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40440,8 +39074,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40455,9 +39089,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40468,9 +39100,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40481,9 +39111,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40496,9 +39124,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40509,9 +39135,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40522,9 +39146,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40537,8 +39159,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40550,8 +39172,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40563,8 +39185,8 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40584,9 +39206,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40597,9 +39217,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40610,9 +39228,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40631,9 +39247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40644,9 +39258,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40657,9 +39269,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40684,9 +39294,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40697,9 +39305,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40710,9 +39316,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40725,8 +39329,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40738,8 +39342,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40751,8 +39355,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40766,8 +39370,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40779,8 +39383,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40792,8 +39396,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -40811,8 +39415,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40823,7 +39426,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40834,7 +39437,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40845,9 +39448,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40858,9 +39459,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40871,9 +39470,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40886,8 +39483,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40898,8 +39494,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40910,7 +39505,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40921,9 +39516,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40934,9 +39527,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40947,9 +39538,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40962,8 +39551,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 16) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40974,8 +39562,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40986,8 +39573,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40998,9 +39584,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41011,9 +39595,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41024,9 +39606,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41039,8 +39619,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41051,7 +39630,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41062,8 +39641,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMSae(256, 256) |] + Operands = [| Reg(512, RegBit); RMSae(256, 256) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41074,8 +39652,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41086,7 +39663,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41097,7 +39674,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41110,8 +39687,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41122,8 +39698,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41134,7 +39709,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41145,8 +39720,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41158,8 +39733,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41171,8 +39746,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41184,8 +39759,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41197,8 +39772,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41210,8 +39785,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41225,8 +39800,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41237,7 +39811,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41248,7 +39822,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41259,8 +39833,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41272,8 +39846,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41285,8 +39859,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41298,8 +39872,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41311,8 +39885,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41324,8 +39898,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41339,8 +39913,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41352,8 +39926,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41365,8 +39939,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41378,8 +39952,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -41395,8 +39969,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41407,8 +39980,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41419,8 +39991,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41433,8 +40004,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41445,8 +40015,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41457,8 +40026,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41469,8 +40037,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41483,7 +40050,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41494,7 +40061,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(512, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41505,7 +40072,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41516,7 +40083,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(512, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41529,7 +40096,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(512, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41540,7 +40107,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(512, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41553,7 +40120,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41564,7 +40131,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41575,7 +40142,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41588,7 +40155,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41599,7 +40166,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41610,7 +40177,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41623,8 +40190,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41635,8 +40201,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41647,8 +40212,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41661,8 +40225,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41673,8 +40236,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41685,8 +40247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41699,8 +40260,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41711,7 +40271,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41722,7 +40282,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41733,8 +40293,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41745,7 +40304,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41756,7 +40315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41769,8 +40328,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41781,8 +40339,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41793,7 +40350,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(512, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41804,8 +40361,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41816,8 +40372,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41828,7 +40383,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41841,8 +40396,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41853,8 +40407,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41865,8 +40418,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41877,8 +40429,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 16) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41889,8 +40440,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41901,8 +40451,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41915,8 +40464,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41927,7 +40475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41938,7 +40486,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41949,8 +40497,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41961,7 +40508,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41972,7 +40519,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41985,8 +40532,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41997,8 +40543,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42009,7 +40554,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(512, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42020,8 +40565,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42032,8 +40576,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42044,7 +40587,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42057,8 +40600,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42069,7 +40611,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42080,7 +40622,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42091,8 +40633,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42103,7 +40644,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42114,7 +40655,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42127,7 +40668,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42138,7 +40679,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42149,7 +40690,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42160,7 +40701,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42171,7 +40712,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42182,7 +40723,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42193,7 +40734,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42204,7 +40745,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42215,7 +40756,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42226,7 +40767,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42237,7 +40778,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42248,7 +40789,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42262,7 +40803,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42275,7 +40816,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42288,7 +40829,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42301,7 +40842,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42314,7 +40855,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42327,7 +40868,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42340,7 +40881,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42353,7 +40894,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42366,7 +40907,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42379,7 +40920,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42392,7 +40933,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42405,7 +40946,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42419,8 +40960,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42432,8 +40973,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42445,8 +40986,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42458,7 +40999,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42469,7 +41010,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42480,7 +41021,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42491,7 +41032,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42502,7 +41043,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42513,7 +41054,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42527,7 +41068,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42540,7 +41081,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42553,7 +41094,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42565,7 +41106,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42576,7 +41117,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42587,7 +41128,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42598,7 +41139,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42609,7 +41150,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42620,7 +41161,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42633,7 +41174,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42644,7 +41185,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42655,7 +41196,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] + Operands = [| Reg(512, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42666,7 +41207,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42677,7 +41218,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42688,7 +41229,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42701,8 +41242,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42714,8 +41255,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42727,8 +41268,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42742,8 +41283,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42755,8 +41296,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42768,8 +41309,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42781,8 +41322,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42794,8 +41335,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42807,8 +41348,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42822,8 +41363,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42835,8 +41376,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -42854,8 +41395,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42866,7 +41406,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42877,7 +41417,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42888,8 +41428,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42900,7 +41439,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42911,7 +41450,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42924,8 +41463,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42936,8 +41474,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42948,7 +41485,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(512, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42959,8 +41496,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42971,8 +41507,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42983,7 +41518,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42996,8 +41531,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43008,8 +41542,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43020,8 +41553,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43032,8 +41564,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 16) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 16); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43044,8 +41575,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43056,8 +41586,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(512, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43070,8 +41599,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43082,7 +41610,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43093,7 +41621,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43104,8 +41632,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43116,7 +41643,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43127,7 +41654,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43140,8 +41667,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43152,8 +41678,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43164,7 +41689,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(512, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43175,8 +41700,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 32) - Reg(128, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 32); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43187,8 +41711,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(128, 64) - Reg(256, OprRegType.RegBit) |] + Operands = [| RMdiff(128, 64); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43199,7 +41722,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43212,8 +41735,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43224,7 +41746,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(256, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43235,7 +41757,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(512, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43246,7 +41768,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43257,7 +41779,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43268,7 +41790,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43281,8 +41803,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43294,8 +41816,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43307,8 +41829,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43320,8 +41842,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43336,7 +41858,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43349,7 +41871,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43362,7 +41884,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43376,9 +41898,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43389,9 +41909,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43402,9 +41920,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43415,7 +41931,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43426,7 +41942,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43437,7 +41953,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43448,7 +41964,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43459,7 +41975,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43470,7 +41986,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43483,8 +41999,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43496,8 +42012,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43509,8 +42025,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43522,8 +42038,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43535,8 +42051,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43548,8 +42064,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43561,7 +42077,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43572,7 +42088,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43583,7 +42099,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43594,7 +42110,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43605,7 +42121,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43616,7 +42132,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.RMBit) |] + Operands = [| OpMaskReg; Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43629,9 +42145,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43642,9 +42156,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43655,9 +42167,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43668,7 +42178,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43679,7 +42189,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43690,7 +42200,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43703,8 +42213,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43716,8 +42226,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43729,8 +42239,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43742,8 +42252,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43755,8 +42265,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43768,8 +42278,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43783,9 +42293,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43796,9 +42304,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43809,9 +42315,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43824,8 +42328,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43837,8 +42341,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43850,8 +42354,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43863,8 +42367,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43876,8 +42380,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43889,8 +42393,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43904,9 +42408,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43917,9 +42419,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43930,9 +42430,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -43945,8 +42443,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43958,8 +42456,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43971,8 +42469,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43984,8 +42482,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -43997,8 +42495,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44010,8 +42508,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44025,8 +42523,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44038,8 +42536,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44051,8 +42549,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44064,8 +42562,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44077,8 +42575,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44090,8 +42588,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44107,8 +42605,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44119,8 +42616,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44131,7 +42627,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -44143,8 +42639,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44155,8 +42650,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44167,7 +42661,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -44181,8 +42675,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44194,8 +42688,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44209,8 +42703,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44221,8 +42714,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44233,8 +42725,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44245,8 +42736,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44257,8 +42747,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44269,8 +42758,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44283,8 +42771,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44296,8 +42784,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44309,8 +42797,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44322,8 +42810,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44335,8 +42823,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44348,8 +42836,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44363,8 +42851,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44376,8 +42864,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44389,8 +42877,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44402,8 +42890,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44415,8 +42903,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44428,8 +42916,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44443,8 +42931,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44456,8 +42944,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44469,8 +42957,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44482,8 +42970,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44495,8 +42983,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44508,8 +42996,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44531,8 +43019,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44543,8 +43030,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44555,8 +43041,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44567,8 +43052,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44579,8 +43063,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44591,8 +43074,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44605,8 +43087,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44618,8 +43100,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44633,8 +43115,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44645,8 +43126,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44657,8 +43137,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44669,8 +43148,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44681,8 +43159,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44693,8 +43170,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44707,8 +43183,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44720,8 +43196,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44735,8 +43211,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44748,8 +43224,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44761,8 +43237,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44776,8 +43252,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44789,8 +43265,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44802,8 +43278,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44817,8 +43293,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44830,8 +43306,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44843,8 +43319,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44856,8 +43332,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44869,8 +43345,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44882,8 +43358,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44895,9 +43371,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44910,8 +43384,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44923,8 +43397,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44936,8 +43410,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -44949,9 +43423,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44964,7 +43436,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44975,7 +43447,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44986,7 +43458,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44997,7 +43469,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45008,7 +43480,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45019,7 +43491,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45032,8 +43504,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45044,8 +43515,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45056,8 +43526,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45068,8 +43537,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45080,8 +43548,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45092,8 +43559,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45110,8 +43576,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45122,8 +43587,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45134,8 +43598,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 32) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45148,8 +43611,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45160,8 +43622,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45172,8 +43633,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45184,8 +43644,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45196,8 +43655,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45208,8 +43666,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 64) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45222,7 +43679,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45233,7 +43690,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(512, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45244,7 +43701,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(256, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45255,7 +43712,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(512, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45268,7 +43725,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(512, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45279,7 +43736,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(512, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45304,7 +43761,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45315,8 +43772,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45327,7 +43783,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45338,8 +43794,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45350,7 +43805,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] + Operands = [| Reg(512, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45361,8 +43816,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45373,7 +43827,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); Mem 128 |] + Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45384,8 +43838,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45396,7 +43849,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); Mem 256 |] + Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45407,8 +43860,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45419,7 +43871,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); Mem 512 |] + Operands = [| Reg(512, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45430,8 +43882,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45444,7 +43895,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45455,8 +43906,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45467,7 +43917,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45478,8 +43928,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RMBit) - Reg(256, OprRegType.RegBit) |] + Operands = [| Reg(256, RMBit); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45490,7 +43939,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45501,8 +43950,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RMBit) - Reg(512, OprRegType.RegBit) |] + Operands = [| Reg(512, RMBit); Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45513,7 +43961,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 128; Reg(128, OprRegType.RegBit) |] + Operands = [| Mem 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45524,8 +43972,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RMBit) - Reg(128, OprRegType.RegBit) |] + Operands = [| Reg(128, RMBit); Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45536,7 +43983,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 256; Reg(256, OprRegType.RegBit) |] + Operands = [| Mem 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45547,8 +43994,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RMBit) - Reg(256, OprRegType.RegBit) |] + Operands = [| Reg(256, RMBit); Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45559,7 +44005,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 512; Reg(512, OprRegType.RegBit) |] + Operands = [| Mem 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45570,8 +44016,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RMBit) - Reg(512, OprRegType.RegBit) |] + Operands = [| Reg(512, RMBit); Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45584,8 +44029,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45597,8 +44042,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45610,8 +44055,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45623,8 +44068,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45636,8 +44081,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45649,8 +44094,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45664,8 +44109,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45677,8 +44122,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45690,8 +44135,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45703,8 +44148,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45716,8 +44161,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45729,8 +44174,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45744,9 +44189,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45757,9 +44200,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45770,9 +44211,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45783,9 +44222,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45796,9 +44233,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45809,9 +44244,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45827,7 +44260,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45840,7 +44273,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45853,7 +44286,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45866,7 +44299,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45879,7 +44312,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45892,7 +44325,7 @@ let (evexThree38: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45920,9 +44353,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45933,9 +44364,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45946,9 +44375,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45961,8 +44388,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45974,8 +44401,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -45987,8 +44414,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46000,8 +44427,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46013,8 +44440,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46026,8 +44453,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46041,8 +44468,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46054,8 +44481,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46067,8 +44494,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46080,8 +44507,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46092,8 +44518,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46104,8 +44529,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46116,9 +44540,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46129,9 +44551,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46142,9 +44562,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46157,8 +44575,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46170,8 +44588,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46183,8 +44601,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46196,8 +44614,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46209,8 +44627,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46222,8 +44640,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46239,9 +44657,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46252,9 +44668,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46265,9 +44679,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46278,9 +44690,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46291,9 +44701,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46304,9 +44712,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46319,8 +44725,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46332,8 +44738,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46345,8 +44751,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46358,8 +44764,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46371,8 +44777,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46384,8 +44790,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46399,8 +44805,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46412,8 +44818,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46425,8 +44831,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46438,8 +44844,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46451,8 +44857,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46464,8 +44870,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46479,7 +44885,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RMdiff(128, 8) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46490,7 +44896,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RMdiff(128, 8) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46501,7 +44907,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RMdiff(128, 8) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 8) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46514,8 +44920,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(128, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46526,8 +44931,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(256, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46538,8 +44942,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMdiff(128, 16) |] + Operands = [| Reg(512, RegBit); RMdiff(128, 16) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46552,8 +44955,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46564,8 +44966,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46576,8 +44977,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46590,8 +44990,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46602,8 +45001,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46614,8 +45012,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46628,8 +45025,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46640,8 +45036,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46652,8 +45047,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(32, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46664,8 +45058,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(128, RegBit); Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46676,8 +45069,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(256, RegBit); Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46688,8 +45080,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(64, OprRegType.RMBit) |] + Operands = [| Reg(512, RegBit); Reg(64, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.NE @@ -46702,9 +45093,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46715,9 +45104,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46728,9 +45115,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46741,9 +45126,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46754,9 +45137,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46767,9 +45148,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -46782,8 +45161,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46795,8 +45174,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46808,8 +45187,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46821,8 +45200,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46834,8 +45213,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46847,8 +45226,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46862,8 +45241,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46875,8 +45254,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46888,8 +45267,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46901,8 +45280,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46914,8 +45293,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46927,8 +45306,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46948,8 +45327,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46961,8 +45340,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46974,8 +45353,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -46997,7 +45376,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47008,7 +45387,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47019,7 +45398,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47030,7 +45409,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47041,7 +45420,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47052,7 +45431,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47065,7 +45444,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47076,7 +45455,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47087,7 +45466,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47098,7 +45477,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit); RM 128 |] + Operands = [| Reg(128, RegBit); RM 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47109,7 +45488,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit); RM 256 |] + Operands = [| Reg(256, RegBit); RM 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47120,7 +45499,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit); RM 512 |] + Operands = [| Reg(512, RegBit); RM 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47133,7 +45512,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47144,7 +45523,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47155,7 +45534,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47166,7 +45545,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47177,7 +45556,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47188,7 +45567,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47201,7 +45580,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47212,7 +45591,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47223,7 +45602,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47234,7 +45613,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(128, OprRegType.RegBit) |] + Operands = [| RM 128; Reg(128, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47245,7 +45624,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(256, OprRegType.RegBit) |] + Operands = [| RM 256; Reg(256, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47256,7 +45635,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 512; Reg(512, OprRegType.RegBit) |] + Operands = [| RM 512; Reg(512, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47271,9 +45650,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47284,9 +45661,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47297,9 +45672,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47310,9 +45683,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47323,9 +45694,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47336,9 +45705,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47353,7 +45720,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, OprRegType.VVVV); RM 128 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47364,7 +45731,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, OprRegType.VVVV); RM 256 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47375,7 +45742,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, OprRegType.VVVV); RM 512 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47388,7 +45755,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(128, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47399,7 +45766,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(256, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47410,7 +45777,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(512, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47421,7 +45788,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(128, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47432,7 +45799,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(256, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47443,7 +45810,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(512, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47456,7 +45823,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47467,7 +45834,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47478,7 +45845,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(256, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47489,7 +45856,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47500,7 +45867,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(256, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47511,7 +45878,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(512, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47524,7 +45891,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(128, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47535,7 +45902,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(256, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47546,7 +45913,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(512, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47557,7 +45924,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(128, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47568,7 +45935,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(256, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47579,7 +45946,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 32 |] + Operands = [| Reg(512, RegBit); MemVSIB 32 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47592,7 +45959,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47603,7 +45970,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47614,7 +45981,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(256, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47625,7 +45992,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| Reg(128, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(128, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47636,7 +46003,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| Reg(256, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(256, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47647,7 +46014,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| Reg(512, OprRegType.RegBit); MemVSIB 64 |] + Operands = [| Reg(512, RegBit); MemVSIB 64 |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -47664,8 +46031,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47677,8 +46044,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47690,8 +46057,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47703,8 +46070,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47716,8 +46083,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47729,8 +46096,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47744,8 +46111,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47757,8 +46124,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47770,8 +46137,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47783,8 +46150,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47796,8 +46163,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47809,8 +46176,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47824,8 +46191,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47837,8 +46204,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47850,8 +46217,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47863,8 +46230,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47876,8 +46243,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47889,8 +46256,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47904,8 +46271,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47917,8 +46284,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47932,8 +46299,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47945,8 +46312,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47958,8 +46325,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47971,8 +46338,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47984,8 +46351,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -47997,8 +46364,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48010,9 +46377,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48025,8 +46390,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48038,8 +46403,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48051,9 +46416,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48066,8 +46429,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48079,8 +46442,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48092,8 +46455,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48105,8 +46468,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48118,8 +46481,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48131,8 +46494,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48146,8 +46509,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48159,8 +46522,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48174,8 +46537,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48187,8 +46550,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48200,8 +46563,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48213,8 +46576,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48226,8 +46589,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48239,8 +46602,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48254,8 +46617,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48267,8 +46630,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48282,7 +46645,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48293,7 +46656,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48304,7 +46667,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48315,7 +46678,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48326,7 +46689,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48337,7 +46700,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48350,7 +46713,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48361,7 +46724,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48372,7 +46735,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48383,7 +46746,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48394,7 +46757,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48405,7 +46768,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48418,7 +46781,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48429,7 +46792,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48440,7 +46803,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48451,7 +46814,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48462,7 +46825,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48473,7 +46836,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 32; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 32; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48486,7 +46849,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48497,7 +46860,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48508,7 +46871,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48519,7 +46882,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(128, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(128, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48530,7 +46893,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(256, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(256, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48541,7 +46904,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.NoModRM - Operands = [| MemVSIB 64; Reg(512, OprRegType.RegBit) |] + Operands = [| MemVSIB 64; Reg(512, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48558,8 +46921,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48571,8 +46934,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48584,8 +46947,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48597,8 +46960,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48610,8 +46973,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48623,8 +46986,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48638,8 +47001,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48651,8 +47014,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48664,8 +47027,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48677,8 +47040,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48690,8 +47053,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48703,8 +47066,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48718,8 +47081,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48731,8 +47094,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48744,8 +47107,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48757,8 +47120,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48770,8 +47133,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48783,8 +47146,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48798,8 +47161,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48811,8 +47174,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48826,8 +47189,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48839,8 +47202,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48852,8 +47215,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48865,8 +47228,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48878,8 +47241,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48891,8 +47254,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48904,9 +47267,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48919,8 +47280,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48932,8 +47293,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48945,9 +47306,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - Mem 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); Mem 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -48960,8 +47319,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48973,8 +47332,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48986,8 +47345,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -48999,8 +47358,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49012,8 +47371,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49025,8 +47384,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49040,8 +47399,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49053,8 +47412,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49068,8 +47427,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49081,8 +47440,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49094,8 +47453,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49107,8 +47466,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49120,8 +47479,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49133,8 +47492,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49148,8 +47507,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49161,8 +47520,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49184,8 +47543,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49197,8 +47556,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49210,8 +47569,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49225,8 +47584,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49238,8 +47597,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49251,8 +47610,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49266,8 +47625,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49279,8 +47638,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49292,8 +47651,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49305,8 +47664,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49318,8 +47677,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49331,8 +47690,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49346,8 +47705,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49359,8 +47718,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49372,8 +47731,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49385,8 +47744,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49398,8 +47757,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49411,8 +47770,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49426,8 +47785,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49439,8 +47798,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49452,8 +47811,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49465,8 +47824,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49478,8 +47837,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49491,8 +47850,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49506,8 +47865,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49519,8 +47878,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49534,8 +47893,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49547,8 +47906,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49560,8 +47919,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49573,8 +47932,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49586,8 +47945,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49599,8 +47958,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49614,8 +47973,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49627,8 +47986,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49642,8 +48001,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49655,8 +48014,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49668,8 +48027,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49681,8 +48040,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49694,8 +48053,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49707,8 +48066,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49722,8 +48081,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49735,8 +48094,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49750,8 +48109,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49763,8 +48122,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49776,8 +48135,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49789,8 +48148,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49802,8 +48161,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49815,8 +48174,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstEr(512, 512, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49830,8 +48189,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49843,8 +48202,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMEr(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -49866,8 +48225,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 32) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49878,8 +48236,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 32) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49890,8 +48247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 32) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49902,8 +48258,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - RMBcst(128, 128, 64) |] + Operands = [| Reg(128, RegBit); RMBcst(128, 128, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49914,8 +48269,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - RMBcst(256, 256, 64) |] + Operands = [| Reg(256, RegBit); RMBcst(256, 256, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49926,8 +48280,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - RMBcst(512, 512, 64) |] + Operands = [| Reg(512, RegBit); RMBcst(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50122,7 +48475,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50134,7 +48487,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50150,7 +48503,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50162,7 +48515,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50176,8 +48529,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -50189,8 +48542,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -50204,7 +48557,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50216,7 +48569,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -50230,8 +48583,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -50243,8 +48596,8 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) |] OpEn = OpEn.RVM Mode64 = Mode64.Valid @@ -50260,9 +48613,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50273,9 +48624,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50286,9 +48635,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50325,9 +48672,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50338,9 +48683,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50351,9 +48694,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50366,9 +48707,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50379,9 +48718,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50392,9 +48729,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50407,9 +48742,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50420,9 +48753,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50433,9 +48764,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50448,9 +48777,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) - RM 128 |] + Operands = [| Reg(128, RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50461,9 +48788,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) - RM 256 |] + Operands = [| Reg(256, RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50474,9 +48799,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) - RM 512 |] + Operands = [| Reg(512, RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50557,7 +48880,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50570,7 +48893,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50585,7 +48908,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50598,7 +48921,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50615,8 +48938,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVM @@ -50629,8 +48952,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVM @@ -50643,8 +48966,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVM @@ -50657,8 +48980,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVM @@ -50671,8 +48994,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVM @@ -50685,8 +49008,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVM @@ -50701,7 +49024,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RM @@ -50714,7 +49037,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RM @@ -50727,7 +49050,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RM @@ -50742,7 +49065,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RM @@ -50755,7 +49078,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RM @@ -50768,7 +49091,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RM @@ -50787,7 +49110,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 16) Imm 8 |] OpEn = OpEn.RMI @@ -50800,7 +49123,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 16) Imm 8 |] OpEn = OpEn.RMI @@ -50813,7 +49136,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 16) Imm 8 |] OpEn = OpEn.RMI @@ -50826,7 +49149,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -50839,7 +49162,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RMI @@ -50852,7 +49175,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RMI @@ -50867,7 +49190,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50880,7 +49203,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50893,7 +49216,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RMI @@ -50908,8 +49231,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -50922,8 +49245,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVM @@ -50938,8 +49261,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -50960,8 +49283,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -50974,8 +49297,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -50988,8 +49311,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 512 Imm 8 |] OpEn = OpEn.RVMI @@ -51012,9 +49335,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 8) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 8); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51027,9 +49348,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RMdiff(32, 16) - Reg(128, OprRegType.RegBit) - Imm 8 |] + Operands = [| RMdiff(32, 16); Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51042,7 +49361,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51053,7 +49372,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 64; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 64; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.None Compat = CompatLegMode.NE @@ -51066,7 +49385,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 32; Reg(128, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 32; Reg(128, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51079,8 +49398,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51093,8 +49412,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51107,8 +49426,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51121,8 +49440,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51137,7 +49456,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51148,7 +49467,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51159,7 +49478,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51170,7 +49489,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51183,8 +49502,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -51197,8 +49516,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -51213,7 +49532,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 256; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51224,7 +49543,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 256; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51240,7 +49559,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| RMdiff(128, 64) - Reg(128, OprRegType.RegBit) + Reg(128, RegBit) Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid @@ -51252,7 +49571,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51277,7 +49596,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51291,7 +49610,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51305,7 +49624,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51319,7 +49638,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51333,7 +49652,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51347,7 +49666,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51363,7 +49682,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51377,7 +49696,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51391,7 +49710,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51405,7 +49724,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51419,7 +49738,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51433,7 +49752,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51448,8 +49767,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(32, 8) Imm 8 |] OpEn = OpEn.RVMI @@ -51464,8 +49783,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMdiff(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51480,8 +49799,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 32 Imm 8 |] OpEn = OpEn.RVMI @@ -51494,8 +49813,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 64 Imm 8 |] OpEn = OpEn.RVMI @@ -51510,8 +49829,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVM @@ -51524,8 +49843,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVM @@ -51538,8 +49857,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVM @@ -51552,8 +49871,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVM @@ -51570,8 +49889,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51584,8 +49903,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51598,8 +49917,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -51612,8 +49931,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51626,8 +49945,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51640,8 +49959,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -51656,7 +49975,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RMI @@ -51669,7 +49988,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RMI @@ -51682,7 +50001,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RMI @@ -51695,7 +50014,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 16) Imm 8 |] OpEn = OpEn.RMI @@ -51708,7 +50027,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 16) Imm 8 |] OpEn = OpEn.RMI @@ -51721,7 +50040,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 16) Imm 8 |] OpEn = OpEn.RMI @@ -51734,7 +50053,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -51747,7 +50066,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RMI @@ -51760,7 +50079,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RMI @@ -51775,8 +50094,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVM @@ -51789,8 +50108,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -51803,8 +50122,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVM @@ -51851,8 +50170,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51865,8 +50184,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51879,8 +50198,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51893,8 +50212,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -51909,7 +50228,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51920,7 +50239,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51931,7 +50250,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(256, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(256, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51942,7 +50261,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 128; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 128; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51955,8 +50274,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -51969,8 +50288,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -51985,7 +50304,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 256; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51996,7 +50315,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| RM 256; Reg(512, OprRegType.RegBit); Imm 8 |] + Operands = [| RM 256; Reg(512, RegBit); Imm 8 |] OpEn = OpEn.MRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52013,10 +50332,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) - RM 128 - Imm 8 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52027,10 +50343,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) - RM 256 - Imm 8 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52041,10 +50354,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) - RM 512 - Imm 8 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52055,10 +50365,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) - RM 128 - Imm 8 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52069,10 +50376,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) - RM 256 - Imm 8 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52083,10 +50387,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) - RM 512 - Imm 8 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52099,10 +50400,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) - RM 128 - Imm 8 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52113,10 +50411,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) - RM 256 - Imm 8 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52127,10 +50422,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) - RM 512 - Imm 8 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52141,10 +50433,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) - RM 128 - Imm 8 |] + Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52155,10 +50444,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) - RM 256 - Imm 8 |] + Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52169,10 +50455,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) - RM 512 - Imm 8 |] + Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -52189,8 +50472,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -52203,8 +50486,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -52217,8 +50500,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 512 Imm 8 |] OpEn = OpEn.RVMI @@ -52233,8 +50516,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVM @@ -52247,8 +50530,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVM @@ -52261,8 +50544,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVM @@ -52275,8 +50558,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVM @@ -52291,8 +50574,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -52305,8 +50588,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -52319,8 +50602,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 512 Imm 8 |] OpEn = OpEn.RVMI @@ -52357,8 +50640,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52371,8 +50654,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52385,8 +50668,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52399,8 +50682,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52413,8 +50696,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52427,8 +50710,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52443,8 +50726,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52457,8 +50740,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVM @@ -52477,8 +50760,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52491,8 +50774,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52505,8 +50788,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52519,8 +50802,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52533,8 +50816,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52547,8 +50830,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52563,8 +50846,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -52577,8 +50860,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52593,7 +50876,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RMI @@ -52606,7 +50889,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RMI @@ -52619,7 +50902,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 64) Imm 8 |] OpEn = OpEn.RMI @@ -52632,7 +50915,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 16) Imm 8 |] OpEn = OpEn.RMI @@ -52645,7 +50928,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 16) Imm 8 |] OpEn = OpEn.RMI @@ -52658,7 +50941,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 16) Imm 8 |] OpEn = OpEn.RMI @@ -52671,7 +50954,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) + Operands = [| Reg(128, RegBit) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RMI @@ -52684,7 +50967,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) + Operands = [| Reg(256, RegBit) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RMI @@ -52697,7 +50980,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) + Operands = [| Reg(512, RegBit) RMBcstSae(512, 512, 32) Imm 8 |] OpEn = OpEn.RMI @@ -52712,8 +50995,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 64) Imm 8 |] OpEn = OpEn.RVM @@ -52726,8 +51009,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -52740,8 +51023,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMSae(128, 32) Imm 8 |] OpEn = OpEn.RVM @@ -52936,8 +51219,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -52950,8 +51233,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -52964,8 +51247,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 512 Imm 8 |] OpEn = OpEn.RVMI @@ -52980,8 +51263,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -52994,8 +51277,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -53008,8 +51291,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -53022,8 +51305,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53036,8 +51319,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53050,8 +51333,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53066,8 +51349,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RM 128 Imm 8 |] OpEn = OpEn.RVMI @@ -53080,8 +51363,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RM 256 Imm 8 |] OpEn = OpEn.RVMI @@ -53094,8 +51377,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RM 512 Imm 8 |] OpEn = OpEn.RVMI @@ -53110,8 +51393,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -53124,8 +51407,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -53138,8 +51421,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] OpEn = OpEn.RVMI @@ -53152,8 +51435,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53166,8 +51449,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53180,8 +51463,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53353,7 +51636,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMBcst(128, 128, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -53367,7 +51650,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(256, OprRegType.VVVV) + Reg(256, VVVV) RMBcst(256, 256, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -53381,7 +51664,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(512, OprRegType.VVVV) + Reg(512, VVVV) RMBcstSae(512, 512, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -53395,7 +51678,7 @@ let (evexThree3A: InstructionCore[][]) = VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem Operands = [| OpMaskReg - Reg(128, OprRegType.VVVV) + Reg(128, VVVV) RMSae(128, 16) Imm 8 |] OpEn = OpEn.RVMI @@ -53432,8 +51715,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53446,8 +51729,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53460,8 +51743,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53476,8 +51759,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, OprRegType.RegBit) - Reg(128, OprRegType.VVVV) + Operands = [| Reg(128, RegBit) + Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53490,8 +51773,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, OprRegType.RegBit) - Reg(256, OprRegType.VVVV) + Operands = [| Reg(256, RegBit) + Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] OpEn = OpEn.RVMI @@ -53504,8 +51787,8 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, OprRegType.RegBit) - Reg(512, OprRegType.VVVV) + Operands = [| Reg(512, RegBit) + Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] OpEn = OpEn.RVMI diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index c297d87df..8677a88b1 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -85,7 +85,7 @@ type OperandType = /// MMX register or memory. | MM of RegType /// MMX register. - | MMXReg + | MMXReg of OprRegType /// Memory. | Mem of RegType /// Memory with VSIB addressing (eg. vm32x). diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 44c084fef..12331be22 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -72,7 +72,7 @@ type IntelParser(wordSz, reader) = let getOperandSize operands = Array.map (fun o -> match o with - | RM sz | Reg(sz, _) | Mem sz | Imm sz | Rel sz -> Some sz + | RM sz | Reg(sz, _) | Mem sz | Imm sz | Rel sz | Moffs sz -> Some sz | FixedReg(Register.AX) -> Some 16 | _ -> None) operands |> Array.distinct @@ -195,6 +195,7 @@ type IntelParser(wordSz, reader) = | [| Some 16 |] when op = Opcode.RET -> false | [| Some 16; _ |] when op = Opcode.ENTER -> false | [| None; Some 16 |] when op = Opcode.MOV -> false + | [| Some 8; Some 16 |] when op = Opcode.OUT -> true | [| None |] when isImplicit16BitOp op -> true | [| Some 16 |] | [| Some 16; _ |] @@ -435,7 +436,13 @@ type IntelParser(wordSz, reader) = setMemoryOperandContextWithCurrentAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) - | MMXReg -> OperandParsers.parseMMXReg (Operands.getReg modRM) + | MMXReg oprRegType -> + let regBit = + match oprRegType with + | RegBit -> Operands.getReg modRM + | RMBit -> Operands.getRM modRM + | _ -> failwith "Invalid OprRegType for MMXReg." + OperandParsers.parseMMXReg regBit | MM sz -> if Operands.modIsReg modRM then OperandParsers.parseMMXReg (Operands.getRM modRM) From d04baff7f314cd438176e75775e332cc4a8cdf68 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 19 May 2026 09:42:29 +0900 Subject: [PATCH 22/26] [Intel] Clean up --- src/FrontEnd/Intel/Parser.fs | 246 +++++++++++++++++++---------------- 1 file changed, 134 insertions(+), 112 deletions(-) diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 12331be22..a96023e6b 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -1,4 +1,4 @@ -(* +(* B2R2 - the Next-Generation Reversing Platform Copyright (c) SoftSec Lab. @ KAIST, since 2016 @@ -57,7 +57,9 @@ type IntelParser(wordSz, reader) = let phlp = ParsingHelper(reader, wordSz, lifter) - let matchesVectorLength (vex: VEXInfo option) insVecLen = + /// Returns true when the VEX/EVEX vector length satisfies the instruction's + /// vector-length constraint (or the constraint is absent). + let matchVectorLength (vex: VEXInfo option) insVecLen = if insVecLen = VectorLength.None then true else match vex with @@ -69,7 +71,9 @@ type IntelParser(wordSz, reader) = | _ -> false | _ -> true - let getOperandSize operands = + /// Returns the distinct operand sizes from an instruction's descriptors. + /// None entries represent operands with no explicit size. + let collectDistinctOpSizes operands = Array.map (fun o -> match o with | RM sz | Reg(sz, _) | Mem sz | Imm sz | Rel sz | Moffs sz -> Some sz @@ -77,15 +81,19 @@ type IntelParser(wordSz, reader) = | _ -> None) operands |> Array.distinct - let contains8BitOperandSize oprSz = + /// Returns true when every operand is 8-bit, meaning REX semantics do not + /// apply to this instruction. + let isAllOprSize8 oprSz = match oprSz with | [| Some 8 |] -> true | _ -> false - let matchesREXPrefix (phlp: ParsingHelper) (insCore: InstructionCore) = + /// Returns true when the observed REX prefix satisfies the constraint + /// declared in the instruction core (NOREX / W0 / W1 / WIG / REXW). + let matchREX (phlp: ParsingHelper) (insCore: InstructionCore) = let insREX = insCore.REXPrefixType match phlp.REXPrefix with - | _ when contains8BitOperandSize (getOperandSize insCore.Operands) -> true + | _ when isAllOprSize8 (collectDistinctOpSizes insCore.Operands) -> true | REXPrefix.NOREX -> (insREX = REXPrefixType.WIG) || (insREX = REXPrefixType.W0) || (insREX = REXPrefixType.NOREX) @@ -97,33 +105,9 @@ type IntelParser(wordSz, reader) = // (insREX = REXPrefixType.REX) | _ -> true - let toPrefixType preType pref = - if (pref &&& Prefix.OPSIZE) <> Prefix.None then preType P66 - elif (pref &&& Prefix.REPZ) <> Prefix.None then preType F3 - elif (pref &&& Prefix.REPNZ) <> Prefix.None then preType F2 - else preType NP - - let convertPrefix maps (pref: Prefix) (vex: VEXInfo option) opByte = - match vex with - | Some v -> toPrefixType Mandatory v.VPrefixes - | None -> - let baseType = - match maps with - | OpcodeClass.Normal OneByte -> - match opByte with - | 0x90uy when Prefix.hasREPZ pref -> Mandatory (* PAUSE *) - | _ -> Legacy - | OpcodeClass.Normal TwoBytes -> - match opByte with - | 0x00uy (* Grp 6 *) - | 0x02uy (* LAR *) - | 0x1Fuy (* NOP *) -> Legacy - | _ -> Mandatory - | _ -> Mandatory // FIXME: Two-byte opcodes(0x0F) are not always - // mandatory. Need more precise handling logic. - toPrefixType baseType pref - - let matchesExactPrefixType pref insPref = + /// Returns true when pref satisfies insPref, treating Legacy NP as a fallback + /// for Mandatory NP. + let matchPrefixType pref insPref = match pref with | Mandatory NP -> insPref = Mandatory NP || insPref = Legacy NP | Mandatory _ -> @@ -131,7 +115,9 @@ type IntelParser(wordSz, reader) = else pref = insPref | _ -> true - let matchesPrefixWithLegacyFallback (phlp: ParsingHelper) insPref = + /// Returns true when the current prefix state satisfies insPref, with Legacy + /// NP as a fallback for Mandatory NP. + let matchPrefixWithLegacyFallback (phlp: ParsingHelper) insPref = let pref = match phlp.VEXInfo with | Some v -> v.VPrefixes @@ -145,7 +131,9 @@ type IntelParser(wordSz, reader) = insPref = Legacy NP || insPref = Mandatory NP else false - let tryGetSpecialCasePrefixRule (phlp: ParsingHelper) opByte = + /// Returns the effective PrefixType for opcodes that deviate from standard + /// mandatory-prefix rules; None for all other opcodes. + let tryResolveSpecialPrefix (phlp: ParsingHelper) opByte = if phlp.VEXInfo.IsSome then None else match phlp.OpcodeClass with @@ -159,29 +147,37 @@ type IntelParser(wordSz, reader) = else Some(Mandatory NP) | _ -> None - let matchesInstructionPrefix (phlp: ParsingHelper) opByte insPref = - match tryGetSpecialCasePrefixRule phlp opByte with - | Some pref -> matchesExactPrefixType pref insPref - | None -> matchesPrefixWithLegacyFallback phlp insPref + /// Returns true when the current prefix satisfies the instruction's + /// requirement, applying special-case resolution where needed. + let matchPrefix (phlp: ParsingHelper) opByte insPref = + match tryResolveSpecialPrefix phlp opByte with + | Some pref -> matchPrefixType pref insPref + | None -> matchPrefixWithLegacyFallback phlp insPref - let shouldConsumePrefixForSpecialCase pref = + /// Returns true when the special-case prefix acted as an opcode selector and + /// should be stripped after matching. + let shouldConsumeSpecialPrefix pref = match pref with | Mandatory NP -> false | Mandatory _ -> true | _ -> false + /// Returns true when the matched prefix should be removed after parsing + /// (VEX always; legacy mandatory only when used as an opcode selector). let shouldConsumePrefix (phlp: ParsingHelper) (insCore: InstructionCore) = match phlp.VEXInfo with | Some _ -> true | None -> - match tryGetSpecialCasePrefixRule phlp (uint8 insCore.OpcodeByte) with - | Some pref -> shouldConsumePrefixForSpecialCase pref + match tryResolveSpecialPrefix phlp (uint8 insCore.OpcodeByte) with + | Some pref -> shouldConsumeSpecialPrefix pref | None -> match insCore.PrefixType with | Mandatory _ -> true | _ -> false - let isImplicit16BitOp = function + /// Returns true for opcodes that implicitly operate on 16-bit operands + /// without encoding an explicit size (e.g., MOVSW, PUSHF, IRET). + let hasImplicit16BitOprSize = function | Opcode.CBW | Opcode.CWD | Opcode.PUSHF | Opcode.PUSHA | Opcode.POPF | Opcode.POPA @@ -190,43 +186,53 @@ type IntelParser(wordSz, reader) = | Opcode.IRET -> true | _ -> false - let contains16BitOperandSize oprSz op = + /// Returns true when this instruction variant requires the 66h prefix. Some + /// opcodes are excluded because their 16-bit form omits it. + let needs66hPrefix oprSz op = match oprSz with | [| Some 16 |] when op = Opcode.RET -> false | [| Some 16; _ |] when op = Opcode.ENTER -> false | [| None; Some 16 |] when op = Opcode.MOV -> false | [| Some 8; Some 16 |] when op = Opcode.OUT -> true - | [| None |] when isImplicit16BitOp op -> true + | [| None |] when hasImplicit16BitOprSize op -> true | [| Some 16 |] | [| Some 16; _ |] | [| None; Some 16 |] (* Temp *) -> true | _ -> false - let matchesOperandSize pref (insCore: InstructionCore) = + /// Returns true when the current prefix is compatible with the operand size + /// implied by the instruction's descriptors. + let matchOperandSize pref (insCore: InstructionCore) = if insCore.OpEn = OpEn.None then true else - let oprSz = getOperandSize insCore.Operands - if contains16BitOperandSize oprSz insCore.Opcode then + let oprSz = collectDistinctOpSizes insCore.Operands + if needs66hPrefix oprSz insCore.Opcode then // FIXME: 16-bit operands do not always require a 66h prefix. pref &&& Prefix.OPSIZE = Prefix.OPSIZE else true - let matchesCPUMode wordSize mode64 compat = + /// Returns true when the CPU word size is compatible with the instruction's + /// Mode64/Compat flags. + let matchCPUMode wordSize mode64 compat = match wordSize with | WordSize.Bit64 when mode64 = Mode64.Invalid -> false | WordSize.Bit64 -> mode64 <> Mode64.NE && mode64 <> Mode64.NS // ?? | WordSize.Bit32 -> compat <> CompatLegMode.NE | _ -> failwith "Unsupported word size." - let hasOpcodeExtension = function + /// Returns true when the ModRM type encodes an opcode group extension (/0–/7) + /// that further disambiguates the instruction. + let isOpcodeGroupExtension = function | ModRMType.ModRMOp0 _ | ModRMType.ModRMOp1 _ | ModRMType.ModRMOp2 _ | ModRMType.ModRMOp3 _ | ModRMType.ModRMOp4 _ | ModRMType.ModRMOp5 _ | ModRMType.ModRMOp6 _ | ModRMType.ModRMOp7 _ -> true | _ -> false - let matchesOpcodeExtensionGroup (span: ByteSpan) (phlp: ParsingHelper) + /// Returns true when the ModRM reg field matches the opcode group extension + /// digit (/0-/7) declared in the instruction core. + let matchOpcodeGroupExtension (span: ByteSpan) (phlp: ParsingHelper) (i: InstructionCore) = - if hasOpcodeExtension i.ModRM then + if isOpcodeGroupExtension i.ModRM then let modRM = span[phlp.CurrPos] let reg = (modRM >>> 3) &&& 0b111uy match reg with @@ -241,9 +247,10 @@ type IntelParser(wordSz, reader) = | _ -> false else true - let matchesModRMConstraint (span: ByteSpan) (phlp: ParsingHelper) - (i: InstructionCore) - oprType insReg = + /// Returns true when the ModRM reg field satisfies the operand type and + /// expected register index constraints. + let matchModRMRegConstraint (span: ByteSpan) (phlp: ParsingHelper) + (i: InstructionCore) oprType insReg = let modRM = span[phlp.CurrPos] let reg = Operands.getReg modRM match oprType with @@ -251,17 +258,19 @@ type IntelParser(wordSz, reader) = | OpMem -> Operands.modIsMemory modRM && reg = insReg | _ -> reg = insReg - let matchesInstructionModRM (span: ByteSpan) (phlp: ParsingHelper) + /// Returns true when the ModRM byte satisfies all constraints in the + /// instruction core (fixed, STi, group digit, or unconstrained). + let matchModRM (span: ByteSpan) (phlp: ParsingHelper) (i: InstructionCore) = match i.ModRM with - | ModRMType.ModRMOp0 o -> matchesModRMConstraint span phlp i o 0 - | ModRMType.ModRMOp1 o -> matchesModRMConstraint span phlp i o 1 - | ModRMType.ModRMOp2 o -> matchesModRMConstraint span phlp i o 2 - | ModRMType.ModRMOp3 o -> matchesModRMConstraint span phlp i o 3 - | ModRMType.ModRMOp4 o -> matchesModRMConstraint span phlp i o 4 - | ModRMType.ModRMOp5 o -> matchesModRMConstraint span phlp i o 5 - | ModRMType.ModRMOp6 o -> matchesModRMConstraint span phlp i o 6 - | ModRMType.ModRMOp7 o -> matchesModRMConstraint span phlp i o 7 + | ModRMType.ModRMOp0 o -> matchModRMRegConstraint span phlp i o 0 + | ModRMType.ModRMOp1 o -> matchModRMRegConstraint span phlp i o 1 + | ModRMType.ModRMOp2 o -> matchModRMRegConstraint span phlp i o 2 + | ModRMType.ModRMOp3 o -> matchModRMRegConstraint span phlp i o 3 + | ModRMType.ModRMOp4 o -> matchModRMRegConstraint span phlp i o 4 + | ModRMType.ModRMOp5 o -> matchModRMRegConstraint span phlp i o 5 + | ModRMType.ModRMOp6 o -> matchModRMRegConstraint span phlp i o 6 + | ModRMType.ModRMOp7 o -> matchModRMRegConstraint span phlp i o 7 | ModRMType.FixedModRM v -> span[phlp.CurrPos] = v | ModRMType.STiModRM v -> let modRM = span[phlp.CurrPos] @@ -272,7 +281,7 @@ type IntelParser(wordSz, reader) = /// address size determined by the current mode and the 67h prefix: /// 32-bit mode -> JECXZ, 67h -> JCXZ /// 64-bit mode -> JRCXZ, 67h -> JECXZ - let matchesJcxzFamilyAddressSize phlp (insCore: InstructionCore) = + let matchJcxzAddrSize phlp (insCore: InstructionCore) = if uint8 insCore.OpcodeByte <> 0xE3uy then true else match ParsingHelper.GetEffAddrSize phlp, insCore.Opcode with @@ -281,7 +290,9 @@ type IntelParser(wordSz, reader) = | 64, Opcode.JRCXZ -> true | _ -> false - let findMatchingSubIndex (span: ByteSpan) (phlp: ParsingHelper) + /// Returns the index of the first instruction-core entry that satisfies + /// all matching constraints; raises if no variant matches. + let selectInstrVariant (span: ByteSpan) (phlp: ParsingHelper) (ins: InstructionCore[]) = let insLen = ins.Length if insLen = 0 then failwith "Error: Instruction core array is empty." @@ -291,14 +302,14 @@ type IntelParser(wordSz, reader) = while i < insLen && idx = -1 do let insCore = ins[i] let p = - matchesInstructionPrefix phlp (uint8 insCore.OpcodeByte) + matchPrefix phlp (uint8 insCore.OpcodeByte) insCore.PrefixType - let s = matchesOperandSize phlp.Prefixes insCore - let c = matchesCPUMode phlp.WordSize insCore.Mode64 insCore.Compat - let r = matchesREXPrefix phlp insCore - let v = matchesVectorLength phlp.VEXInfo insCore.VectorLength - let x = matchesInstructionModRM span phlp insCore - let a = matchesJcxzFamilyAddressSize phlp insCore + let s = matchOperandSize phlp.Prefixes insCore + let c = matchCPUMode phlp.WordSize insCore.Mode64 insCore.Compat + let r = matchREX phlp insCore + let v = matchVectorLength phlp.VEXInfo insCore.VectorLength + let x = matchModRM span phlp insCore + let a = matchJcxzAddrSize phlp insCore #if DEBUG printfn "Checking %d: p=%b, s=%b, c=%b, r=%b, v=%b, x=%b, a=%b" i p s c r v x a @@ -321,40 +332,45 @@ type IntelParser(wordSz, reader) = else () idx - let getImmediateSize = function + /// Returns the RegType size for a FixedImm operand inferred from the + /// surrounding operand size array. + let getFixedImmSize = function | [| Some 8; None |] -> 8 | [| Some 16; None |] -> 16 | [| Some 32; None |] -> 32 | [| Some 64; None |] -> 64 | _ -> 0 // Temp - let setMemoryOperandContext (phlp: ParsingHelper) addrSz regSz memSz = + /// Writes addrSz, regSz, and memSz into the parsing-helper context for use by + /// subsequent operand parsers. + let setupOprContext (phlp: ParsingHelper) addrSz regSz memSz = phlp.MemEffOprSize <- memSz phlp.MemEffAddrSize <- addrSz phlp.MemEffRegSize <- regSz phlp.RegSize <- regSz phlp.OperationSize <- regSz - let setMemoryOperandContextWithCurrentAddr (phlp: ParsingHelper) regSz memSz = + /// Calls setupOprContext with the effective address size derived from the + /// current prefix/mode state. + let setupOprContextWithEffAddr (phlp: ParsingHelper) regSz memSz = let effAddrSz = ParsingHelper.GetEffAddrSize phlp - setMemoryOperandContext phlp effAddrSz regSz memSz + setupOprContext phlp effAddrSz regSz memSz - let getSizeCondForImmediate = function + /// Returns the SzCond for a standalone immediate operand. + /// PUSH/POP use D64; all others use Normal. + let getImmSzCond = function | Opcode.POP | Opcode.PUSH -> SzCond.D64 | _ -> SzCond.Normal - /// Returns true when the given opcode has an encoding that uses a sign- - /// extended immediate operand. + /// Returns true when the opcode has a sign-extending immediate encoding. let supportsSignExtendedImmediate = function | Opcode.ADC | Opcode.ADD | Opcode.AND | Opcode.CMP | Opcode.IMUL | Opcode.MOV | Opcode.OR | Opcode.SBB | Opcode.SUB | Opcode.TEST | Opcode.XOR | Opcode.PUSH -> true | _ -> false - /// Returns true when an immediate operand should be parsed as a sign- - /// extended immediate because its encoded width is smaller than the - /// effective operand width. PUSH is also treated as such because PUSH imm8 - /// is sign-extended to the stack operand width. + /// Returns true when the immediate is narrower than the effective operand + /// width and must be sign-extended (includes PUSH imm8). let hasSignExtendedImmediateSizeMismatch opcode szs = match szs with (* Implicit accumulator + imm8; no widening. *) @@ -365,22 +381,24 @@ type IntelParser(wordSz, reader) = | [| None |] | [| Some _ |] -> false | _ -> true - let parseOperand span (phlp: ParsingHelper) szs modRM (ic: InstructionCore) o - = + /// Parses one operand descriptor into a concrete Operand value and updates + /// the context so subsequent operands derive the correct width. + let parseOperand span (phlp: ParsingHelper) szs modRM + (ic: InstructionCore) o = // FIXME: need operand size determination logic match o with | RM sz -> - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OperandParsers.parseMemOrReg modRM span phlp | RMdiff(regSz, memSz) -> - setMemoryOperandContextWithCurrentAddr phlp regSz memSz + setupOprContextWithEffAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp | Reg(sz, OprRegType.OpRd) -> (* Opcode[2:0] contains the operand. *) - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) OperandParsers.getOprFromRegGrpREX regBit phlp | Reg(sz, oprRegType) -> - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz match oprRegType with | OprRegType.OpRd -> let regBit = Operands.getRM (uint8 ic.OpcodeByte) @@ -397,23 +415,21 @@ type IntelParser(wordSz, reader) = OperandParsers.findRegRBits sz phlp.REXPrefix regBit |> OprReg | OprRegType.Unused -> failwith "Unused OprRegType." (* FixedReg *) | Mem 0 when ic.Opcode = Opcode.LDDQU -> - setMemoryOperandContextWithCurrentAddr phlp 128 128 + setupOprContextWithEffAddr phlp 128 128 OperandParsers.parseMemory modRM span phlp | Mem 0 -> - // FIXME: need operand size determination logic let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.Normal) - setMemoryOperandContext phlp effAddrSz effOprSz effOprSz + setupOprContext phlp effAddrSz effOprSz effOprSz OperandParsers.parseMemory modRM span (phlp: ParsingHelper) | Mem sz -> - // FIXME: need operand size determination logic - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | Imm sz -> - let szCond = getSizeCondForImmediate ic.Opcode + let szCond = getImmSzCond ic.Opcode let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, szCond) - setMemoryOperandContext phlp effAddrSz effOprSz effOprSz + setupOprContext phlp effAddrSz effOprSz effOprSz if supportsSignExtendedImmediate ic.Opcode && hasSignExtendedImmediateSizeMismatch ic.Opcode szs then OperandParsers.parseOprSImm span phlp sz @@ -421,11 +437,11 @@ type IntelParser(wordSz, reader) = | Rel sz -> let effAddrSz = ParsingHelper.GetEffAddrSize phlp let effOprSz = ParsingHelper.GetEffOprSize(phlp, SzCond.F64) - setMemoryOperandContext phlp effAddrSz effOprSz effOprSz + setupOprContext phlp effAddrSz effOprSz effOprSz OperandParsers.parseOprForRelJmp span phlp sz | FixedReg reg -> let sz = Register.toRegType phlp.WordSize reg - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OprReg reg | STReg None -> Operands.getRM modRM |> Operands.getSTReg | STReg(Some reg) -> OprReg reg @@ -433,7 +449,7 @@ type IntelParser(wordSz, reader) = if Operands.modIsReg modRM then OperandParsers.parseBoundRegister (Operands.getRM modRM) else - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) | MMXReg oprRegType -> @@ -447,11 +463,11 @@ type IntelParser(wordSz, reader) = if Operands.modIsReg modRM then OperandParsers.parseMMXReg (Operands.getRM modRM) else - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OperandParsers.parseMemory modRM span phlp - | FixedImm imm -> OprImm(int64 imm, getImmediateSize szs) + | FixedImm imm -> OprImm(int64 imm, getFixedImmSize szs) | Moffs sz -> - setMemoryOperandContextWithCurrentAddr phlp sz sz + setupOprContextWithEffAddr phlp sz sz OperandParsers.parseOprOnlyDisp span phlp | Sreg -> OperandParsers.parseSegReg (Operands.getReg modRM) | Far sz -> // XXX @@ -465,7 +481,7 @@ type IntelParser(wordSz, reader) = phlp.MemEffAddrSize <- effAddrSz phlp.MemEffRegSize <- regSz phlp.RegSize <- effOprSz - phlp.OperationSize <- oprSz + phlp.OperationSize <- oprSz (* Far ptr: OperationSize holds total ptr size *) let addrSz = RegType.toByteWidth phlp.MemEffAddrSize let addrValue = OperandParsers.parseUnsignedImm span phlp addrSz let selector = phlp.ReadInt16 span @@ -476,7 +492,9 @@ type IntelParser(wordSz, reader) = | o -> failwithf "Unsupported operand type: %A" o - let operandsArrayToOperands = function + /// Wraps a concrete operand array into the Operands discriminated union + /// (NoOperand / OneOperand / … / FourOperands). + let buildOperands = function | [||] -> Operands.NoOperand | [| op1 |] -> Operands.OneOperand(op1) | [| op1; op2 |] -> Operands.TwoOperands(op1, op2) @@ -484,7 +502,9 @@ type IntelParser(wordSz, reader) = | [| op1; op2; op3; op4 |] -> Operands.FourOperands(op1, op2, op3, op4) | _ -> failwith "Invalid number of operands." - let parseOperands span (phlp: ParsingHelper) (ic: InstructionCore) = + /// Reads the ModRM byte if required, then parses all operand descriptors + /// and returns the assembled Operands value. + let parseAllOperands span (phlp: ParsingHelper) (ic: InstructionCore) = let modRM = match ic.ModRM with | ModRMType.NoModRM when ic.OpEn = OpEn.M -> @@ -497,13 +517,15 @@ type IntelParser(wordSz, reader) = | [| NoOpr |] -> Operands.NoOperand | _ -> let operands = Array.zeroCreate ic.Operands.Length - let szs = getOperandSize ic.Operands + let szs = collectDistinctOpSizes ic.Operands for i = 0 to ic.Operands.Length - 1 do let opr = ic.Operands[i] operands[i] <- parseOperand span phlp szs modRM ic opr - operands |> operandsArrayToOperands + operands |> buildOperands - let applyMandatoryPrefixFilter phlp insCore = + /// Removes the prefix from the set when the matched instruction consumed + /// it as an opcode selector rather than a plain prefix. + let consumePrefixIfNeeded phlp insCore = if shouldConsumePrefix phlp insCore then phlp.Prefixes <- filterPrefs phlp.Prefixes else () @@ -632,13 +654,13 @@ type IntelParser(wordSz, reader) = | OpcodeClass.Normal TwoBytes -> InstructionArrays.norTwo[int (phlp.ReadByte span)] | _ -> InstructionArrays.norOne[int (phlp.ReadByte span)] - let subIdx = findMatchingSubIndex span phlp insCores + let subIdx = selectInstrVariant span phlp insCores #if DEBUG //printfn "\nSelected InstructionCore(%d)\n%A\nOpcode Class: %A" // subIdx insCores[subIdx] phlp.OpcodeClass #endif let insCore = insCores[subIdx] phlp.TupleType <- insCore.TupleType - let operands = parseOperands span phlp insCore - applyMandatoryPrefixFilter phlp insCore + let operands = parseAllOperands span phlp insCore + consumePrefixIfNeeded phlp insCore newInstruction phlp insCore.Opcode operands :> IInstruction From b42af4245fb4702bb540111cb56f626857a9dda4 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Tue, 19 May 2026 10:02:39 +0900 Subject: [PATCH 23/26] [Intel] Remove GETSEC leaf variants --- src/FrontEnd/Intel/Intel.fs | 79 +------------------------------------ 1 file changed, 1 insertion(+), 78 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 79584f3e9..91fed1741 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -11412,84 +11412,7 @@ let (norTwo: InstructionCore[][]) = |] [| // index 55(0x37) { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP - PrefixType = Mandatory NP - REXPrefixType = REXPrefixType.NOREX - VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM - Operands = [| NoOpr |] - OpEn = OpEn.None - Mode64 = Mode64.None - Compat = CompatLegMode.None - TupleType = TupleType.NA } - { OpcodeByte = 55u - Opcode = Opcode.InvalOP + Opcode = Opcode.GETSEC PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None From 26fde97731cfc6c60d634039e679a62f2763fe70 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 4 Jun 2026 14:48:21 +0900 Subject: [PATCH 24/26] [Intel] Refine opmask operand parsing --- src/FrontEnd/Intel/Intel.fs | 450 +++++++++++++++++-------------- src/FrontEnd/Intel/IntelTypes.fs | 2 +- src/FrontEnd/Intel/Parser.fs | 31 ++- 3 files changed, 280 insertions(+), 203 deletions(-) diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 91fed1741..68c421623 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -21609,7 +21609,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21620,7 +21620,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21631,7 +21631,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21642,7 +21642,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21655,7 +21655,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21666,7 +21666,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21677,7 +21677,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21688,7 +21688,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21703,7 +21703,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21714,7 +21714,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21725,7 +21725,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21736,7 +21736,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21749,7 +21749,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21760,7 +21760,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21771,7 +21771,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21782,7 +21782,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21795,7 +21795,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21806,7 +21806,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21817,7 +21817,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21828,7 +21828,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21841,7 +21841,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21852,7 +21852,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21863,7 +21863,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21874,7 +21874,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21891,7 +21891,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21902,7 +21902,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21913,7 +21913,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21924,7 +21924,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21937,7 +21937,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21948,7 +21948,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -21959,7 +21959,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(VVVV); OpMaskReg(RMBit) |] OpEn = OpEn.RVR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23937,7 +23937,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM 16 |] + Operands = [| OpMaskReg(RegBit); KM 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23948,7 +23948,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM 8 |] + Operands = [| OpMaskReg(RegBit); KM 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23959,7 +23959,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM 64 |] + Operands = [| OpMaskReg(RegBit); KM 64 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23970,7 +23970,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; KM 32 |] + Operands = [| OpMaskReg(RegBit); KM 32 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23983,7 +23983,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 16; OpMaskReg |] + Operands = [| Mem 16; OpMaskReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -23994,7 +23994,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 8; OpMaskReg |] + Operands = [| Mem 8; OpMaskReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24005,7 +24005,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 64; OpMaskReg |] + Operands = [| Mem 64; OpMaskReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24016,7 +24016,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Mem 32; OpMaskReg |] + Operands = [| Mem 32; OpMaskReg(RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24029,7 +24029,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24040,7 +24040,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24051,7 +24051,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(64, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(64, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24062,7 +24062,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(32, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(32, RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24075,7 +24075,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24086,7 +24086,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24097,7 +24097,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(64, RegBit); OpMaskReg |] + Operands = [| Reg(64, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Invalid @@ -24108,7 +24108,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(32, RegBit); OpMaskReg |] + Operands = [| Reg(32, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24129,7 +24129,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24140,7 +24140,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24151,7 +24151,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24162,7 +24162,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24175,7 +24175,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24186,7 +24186,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24197,7 +24197,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -24208,7 +24208,7 @@ let (vexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RR Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31142,7 +31142,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31153,7 +31153,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31166,7 +31166,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31177,7 +31177,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31190,7 +31190,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31201,7 +31201,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31214,7 +31214,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -31225,7 +31225,7 @@ let (vexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; OpMaskReg; Imm 8 |] + Operands = [| OpMaskReg(RegBit); OpMaskReg(RMBit); Imm 8 |] OpEn = OpEn.RRI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34593,7 +34593,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34604,7 +34604,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34615,7 +34615,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34628,7 +34628,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34639,7 +34639,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34650,7 +34650,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -34663,7 +34663,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM @@ -34676,7 +34676,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM @@ -34689,7 +34689,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM @@ -35865,7 +35865,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35876,7 +35876,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35887,7 +35887,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35900,7 +35900,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35911,7 +35911,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35922,7 +35922,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.WIG VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -35935,7 +35935,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM @@ -35948,7 +35948,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM @@ -35961,7 +35961,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM @@ -37038,7 +37038,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] @@ -37052,7 +37052,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] @@ -37066,7 +37066,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcstSae(512, 512, 64) Imm 8 |] @@ -37080,7 +37080,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] @@ -37094,7 +37094,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] @@ -37108,7 +37108,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcstSae(512, 512, 32) Imm 8 |] @@ -37122,7 +37122,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMSae(128, 64) Imm 8 |] @@ -37136,7 +37136,7 @@ let (evexTwo: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMSae(128, 32) Imm 8 |] @@ -40591,7 +40591,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40602,7 +40602,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40613,7 +40613,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40624,7 +40624,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40635,7 +40635,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40646,7 +40646,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40657,7 +40657,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40668,7 +40668,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40679,7 +40679,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40690,7 +40690,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40701,7 +40701,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40712,7 +40712,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40725,7 +40725,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM @@ -40738,7 +40738,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM @@ -40751,7 +40751,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM @@ -40764,7 +40764,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM @@ -40777,7 +40777,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM @@ -40790,7 +40790,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM @@ -40803,7 +40803,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM @@ -40816,7 +40816,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM @@ -40829,7 +40829,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM @@ -40842,7 +40842,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM @@ -40855,7 +40855,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM @@ -40868,7 +40868,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM @@ -40922,7 +40922,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40933,7 +40933,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40944,7 +40944,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40955,7 +40955,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40966,7 +40966,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40977,7 +40977,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -40990,7 +40990,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM @@ -41003,7 +41003,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM @@ -41016,7 +41016,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM @@ -41029,7 +41029,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41040,7 +41040,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41051,7 +41051,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41062,7 +41062,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41073,7 +41073,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41084,7 +41084,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41130,7 +41130,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41141,7 +41141,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41152,7 +41152,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41780,7 +41780,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM @@ -41793,7 +41793,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM @@ -41806,7 +41806,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM @@ -41854,7 +41854,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41865,7 +41865,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41876,7 +41876,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41887,7 +41887,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41898,7 +41898,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -41909,7 +41909,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42000,7 +42000,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42011,7 +42011,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42022,7 +42022,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42033,7 +42033,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42044,7 +42044,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42055,7 +42055,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, RMBit) |] + Operands = [| OpMaskReg(RegBit); Reg(512, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42101,7 +42101,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(128, RegBit); OpMaskReg |] + Operands = [| Reg(128, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42112,7 +42112,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(256, RegBit); OpMaskReg |] + Operands = [| Reg(256, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -42123,7 +42123,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| Reg(512, RegBit); OpMaskReg |] + Operands = [| Reg(512, RegBit); OpMaskReg(RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -44182,7 +44182,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) |] OpEn = OpEn.RVM @@ -44195,7 +44195,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) |] OpEn = OpEn.RVM @@ -44208,7 +44208,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) |] OpEn = OpEn.RVM @@ -44221,7 +44221,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) |] OpEn = OpEn.RVM @@ -44234,7 +44234,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) |] OpEn = OpEn.RVM @@ -44247,7 +44247,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) |] OpEn = OpEn.RVM @@ -45643,7 +45643,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128 |] + Operands = [| OpMaskReg(RegBit); Reg(128, VVVV); RM 128 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45654,7 +45654,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256 |] + Operands = [| OpMaskReg(RegBit); Reg(256, VVVV); RM 256 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -45665,7 +45665,7 @@ let (evexThree38: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512 |] + Operands = [| OpMaskReg(RegBit); Reg(512, VVVV); RM 512 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -49518,7 +49518,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] @@ -49532,7 +49532,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] @@ -49546,7 +49546,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] @@ -49560,7 +49560,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] @@ -49574,7 +49574,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] @@ -49588,7 +49588,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] @@ -49604,7 +49604,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 32) Imm 8 |] @@ -49618,7 +49618,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 32) Imm 8 |] @@ -49632,7 +49632,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 32) Imm 8 |] @@ -49646,7 +49646,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 64) Imm 8 |] @@ -49660,7 +49660,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 64) Imm 8 |] @@ -49674,7 +49674,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcst(512, 512, 64) Imm 8 |] @@ -50255,7 +50255,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(128, VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50266,7 +50269,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(256, VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50277,7 +50283,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(512, VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50288,7 +50297,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(128, VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50299,7 +50311,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(256, VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50310,7 +50325,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(512, VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50323,7 +50341,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(128, VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50334,7 +50355,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(256, VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50345,7 +50369,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(512, VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50356,7 +50383,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(128, VVVV); RM 128; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(128, VVVV) + RM 128 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50367,7 +50397,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(256, VVVV); RM 256; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(256, VVVV) + RM 256 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50378,7 +50411,10 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; Reg(512, VVVV); RM 512; Imm 8 |] + Operands = [| OpMaskReg(RegBit) + Reg(512, VVVV) + RM 512 + Imm 8 |] OpEn = OpEn.RVM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -50990,7 +51026,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(128, 128, 64); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(128, 128, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51001,7 +51039,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(256, 256, 64); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(256, 256, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51012,7 +51052,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(512, 512, 64); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(512, 512, 64) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51023,7 +51065,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(128, 128, 16); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(128, 128, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51034,7 +51078,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(256, 256, 16); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(256, 256, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51045,7 +51091,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(512, 512, 16); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(512, 512, 16) + Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51056,7 +51104,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(128, 128, 32); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(128, 128, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51067,7 +51117,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(256, 256, 32); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(256, 256, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51078,7 +51130,9 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMBcst(512, 512, 32); Imm 8 |] + Operands = [| OpMaskReg(RegBit) + RMBcst(512, 512, 32) + Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51091,7 +51145,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(128, 64); Imm 8 |] + Operands = [| OpMaskReg(RegBit); RMdiff(128, 64); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51102,7 +51156,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(128, 16); Imm 8 |] + Operands = [| OpMaskReg(RegBit); RMdiff(128, 16); Imm 8 |] OpEn = OpEn.RMI Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51113,7 +51167,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg; RMdiff(128, 32); Imm 8 |] + Operands = [| OpMaskReg(RegBit); RMdiff(128, 32); Imm 8 |] OpEn = OpEn.RM Mode64 = Mode64.Valid Compat = CompatLegMode.Valid @@ -51558,7 +51612,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMBcst(128, 128, 16) Imm 8 |] @@ -51572,7 +51626,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(256, VVVV) RMBcst(256, 256, 16) Imm 8 |] @@ -51586,7 +51640,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V512 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(512, VVVV) RMBcstSae(512, 512, 16) Imm 8 |] @@ -51600,7 +51654,7 @@ let (evexThree3A: InstructionCore[][]) = REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 ModRM = ModRMType.ModRM OpRegMem - Operands = [| OpMaskReg + Operands = [| OpMaskReg(RegBit) Reg(128, VVVV) RMSae(128, 16) Imm 8 |] diff --git a/src/FrontEnd/Intel/IntelTypes.fs b/src/FrontEnd/Intel/IntelTypes.fs index 8677a88b1..1256cc427 100644 --- a/src/FrontEnd/Intel/IntelTypes.fs +++ b/src/FrontEnd/Intel/IntelTypes.fs @@ -65,7 +65,7 @@ type OperandType = /// Address-size-dependent register operand. | RegAddr /// Opmask register. - | OpMaskReg + | OpMaskReg of OprRegType /// Opmask register or memory. | KM of RegType /// Segment register. diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index a96023e6b..67d7e99a9 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -1,4 +1,4 @@ -(* +(* B2R2 - the Next-Generation Reversing Platform Copyright (c) SoftSec Lab. @ KAIST, since 2016 @@ -381,10 +381,15 @@ type IntelParser(wordSz, reader) = | [| None |] | [| Some _ |] -> false | _ -> true + let getVVVVBit vexInfo = + match vexInfo with + | Some v -> int v.VVVV + | None -> failwith "VEXInfo is required to get VVVV bits." + /// Parses one operand descriptor into a concrete Operand value and updates /// the context so subsequent operands derive the correct width. - let parseOperand span (phlp: ParsingHelper) szs modRM - (ic: InstructionCore) o = + let parseOperand span (phlp: ParsingHelper) szs modRM (ic: InstructionCore) o + = // FIXME: need operand size determination logic match o with | RM sz -> @@ -393,6 +398,9 @@ type IntelParser(wordSz, reader) = | RMdiff(regSz, memSz) -> setupOprContextWithEffAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp + | RMBcst(regSz, memSz, bcstSz) -> + setupOprContextWithEffAddr phlp regSz memSz + OperandParsers.parseMemOrReg modRM span phlp | Reg(sz, OprRegType.OpRd) -> (* Opcode[2:0] contains the operand. *) setupOprContextWithEffAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) @@ -452,6 +460,20 @@ type IntelParser(wordSz, reader) = setupOprContextWithEffAddr phlp sz sz OperandParsers.parseMemory modRM span phlp | BndReg -> OperandParsers.parseBoundRegister (Operands.getReg modRM) + | OpMaskReg oprRegType -> + let regBit = + match oprRegType with + | RegBit -> Operands.getReg modRM + | RMBit -> Operands.getRM modRM + | VVVV -> getVVVVBit phlp.VEXInfo + | _ -> failwith "Invalid OprRegType for OpMaskReg." + OperandParsers.parseOpMaskReg regBit + | KM sz -> + setupOprContextWithEffAddr phlp sz sz + if Operands.modIsReg modRM then + OperandParsers.parseOpMaskReg (Operands.getRM modRM) + else + OperandParsers.parseMemory modRM span phlp | MMXReg oprRegType -> let regBit = match oprRegType with @@ -481,7 +503,8 @@ type IntelParser(wordSz, reader) = phlp.MemEffAddrSize <- effAddrSz phlp.MemEffRegSize <- regSz phlp.RegSize <- effOprSz - phlp.OperationSize <- oprSz (* Far ptr: OperationSize holds total ptr size *) + (* Far ptr: OperationSize holds total ptr size *) + phlp.OperationSize <- oprSz let addrSz = RegType.toByteWidth phlp.MemEffAddrSize let addrValue = OperandParsers.parseUnsignedImm span phlp addrSz let selector = phlp.ReadInt16 span From 975ca0d0d83cd23b81d8b788906b9d66a1d0b87d Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Wed, 8 Jul 2026 14:46:27 +0900 Subject: [PATCH 25/26] [Intel] Add control/debug/EVEX operand parsing --- src/FrontEnd/Intel.Tests/ParserTests.fs | 72 +++++++++++++++++++++++++ src/FrontEnd/Intel/OperandParsers.fs | 25 +++++++-- src/FrontEnd/Intel/Parser.fs | 15 ++++++ 3 files changed, 109 insertions(+), 3 deletions(-) diff --git a/src/FrontEnd/Intel.Tests/ParserTests.fs b/src/FrontEnd/Intel.Tests/ParserTests.fs index b3107560d..a5bf085ec 100644 --- a/src/FrontEnd/Intel.Tests/ParserTests.fs +++ b/src/FrontEnd/Intel.Tests/ParserTests.fs @@ -1854,6 +1854,78 @@ type ParserTests() = ++ VPMULLD ** [ O.Reg R.YMM0; O.Reg R.YMM3; O.Reg R.YMM3 ] ||> testX64NoPrefixNoSeg + [] + member _.``MOV to/from control registers (1)``() = + "0f20c0" + ++ MOV ** [ O.Reg R.EAX; O.Reg R.CR0 ] + ||> testX86NoPrefixNoSeg + + [] + member _.``MOV to/from control registers (2)``() = + "0f20c0" + ++ MOV ** [ O.Reg R.RAX; O.Reg R.CR0 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``MOV to/from control registers (3)``() = + "440f20c0" + ++ MOV ** [ O.Reg R.RAX; O.Reg R.CR8 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``MOV to/from control registers (4)``() = + "0f22d9" + ++ MOV ** [ O.Reg R.CR3; O.Reg R.RCX ] + ||> testX64NoPrefixNoSeg + + [] + member _.``MOV to/from debug registers (1)``() = + "0f21c0" + ++ MOV ** [ O.Reg R.RAX; O.Reg R.DR0 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``MOV to/from debug registers (2)``() = + "0f21fa" + ++ MOV ** [ O.Reg R.RDX; O.Reg R.DR7 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``MOV to/from debug registers (3)``() = + "0f23f6" + ++ MOV ** [ O.Reg R.DR6; O.Reg R.RSI ] + ||> testX64NoPrefixNoSeg + + [] + member _.``AVX512 embedded rounding (1)``() = + "62f17f082dc1" + ++ VCVTSD2SI ** [ O.Reg R.EAX; O.Reg R.XMM1 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``AVX512 SAE on conversion (1)``() = + "62f17f082cc1" + ++ VCVTTSD2SI ** [ O.Reg R.EAX; O.Reg R.XMM1 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``AVX512 broadcast with embedded rounding (1)``() = + "62f1f54858c2" + ++ VADDPD ** [ O.Reg R.ZMM0; O.Reg R.ZMM1; O.Reg R.ZMM2 ] + ||> testX64NoPrefixNoSeg + + [] + member _.``AVX512 broadcast with SAE (1)``() = + "62f1f548c2d300" + ++ VCMPPD ** [ O.Reg R.K2; O.Reg R.ZMM1; O.Reg R.ZMM3; O.Imm(0L, 8) ] + ||> testX64NoPrefixNoSeg + + [] + member _.``AVX512 register operand with SAE (1)``() = + "62f37d481dca00" + ++ VCVTPS2PH ** [ O.Reg R.YMM2; O.Reg R.ZMM1; O.Imm(0L, 8) ] + ||> testX64NoPrefixNoSeg + #if !EMULATION [] member _.``Size cond ParsingFailure Test (1)``() = diff --git a/src/FrontEnd/Intel/OperandParsers.fs b/src/FrontEnd/Intel/OperandParsers.fs index d662fce5f..b4e07bb5e 100644 --- a/src/FrontEnd/Intel/OperandParsers.fs +++ b/src/FrontEnd/Intel/OperandParsers.fs @@ -538,9 +538,28 @@ let parseBoundRegister n = if n < 4 then Register.bound n |> OprReg else raise ParsingFailureException -let parseControlReg n = Register.control n |> OprReg - -let parseDebugReg n = Register.debug n |> OprReg +/// n is the raw ModRM.reg value (extended by REX.R). CR1, CR5-CR7, and +/// CR9-CR15 do not exist, so n is remapped to CR0/CR2/CR3/CR4/CR8's compact +/// position in the Register enum. +let parseControlReg n = + match n with + | 0 -> Register.control 0 + | 2 -> Register.control 1 + | 3 -> Register.control 2 + | 4 -> Register.control 3 + | 8 -> Register.control 4 + | _ -> raise ParsingFailureException + |> OprReg + +/// n is the raw ModRM.reg value (extended by REX.R). DR4, DR5, and +/// DR8-DR15 do not exist, so n is remapped to DR0-DR3/DR6/DR7's compact +/// position in the Register enum. +let parseDebugReg n = + match n with + | 0 | 1 | 2 | 3 -> Register.debug n + | 6 | 7 -> Register.debug (n - 2) + | _ -> raise ParsingFailureException + |> OprReg let parseOpMaskReg n = Register.opmask n |> OprReg diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index 67d7e99a9..c25505447 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -401,6 +401,12 @@ type IntelParser(wordSz, reader) = | RMBcst(regSz, memSz, bcstSz) -> setupOprContextWithEffAddr phlp regSz memSz OperandParsers.parseMemOrReg modRM span phlp + | RMEr(regSz, memSz) | RMSae(regSz, memSz) -> + setupOprContextWithEffAddr phlp regSz memSz + OperandParsers.parseMemOrReg modRM span phlp + | RMBcstEr(regSz, memSz, _) | RMBcstSae(regSz, memSz, _) -> + setupOprContextWithEffAddr phlp regSz memSz + OperandParsers.parseMemOrReg modRM span phlp | Reg(sz, OprRegType.OpRd) -> (* Opcode[2:0] contains the operand. *) setupOprContextWithEffAddr phlp sz sz let regBit = Operands.getRM (uint8 ic.OpcodeByte) @@ -422,6 +428,10 @@ type IntelParser(wordSz, reader) = let regBit = phlp.ReadByte span >>> 4 &&& 0b1111uy |> int OperandParsers.findRegRBits sz phlp.REXPrefix regBit |> OprReg | OprRegType.Unused -> failwith "Unused OprRegType." (* FixedReg *) + | RegSae sz -> + setupOprContextWithEffAddr phlp sz sz + OperandParsers.findRegRBits sz phlp.REXPrefix (Operands.getReg modRM) + |> OprReg | Mem 0 when ic.Opcode = Opcode.LDDQU -> setupOprContextWithEffAddr phlp 128 128 OperandParsers.parseMemory modRM span phlp @@ -491,6 +501,11 @@ type IntelParser(wordSz, reader) = | Moffs sz -> setupOprContextWithEffAddr phlp sz sz OperandParsers.parseOprOnlyDisp span phlp + | CtrlReg -> + let r = Operands.getReg modRM + let r = if REXPrefix.hasR phlp.REXPrefix then r + 8 else r + OperandParsers.parseControlReg r + | DebugReg -> OperandParsers.parseDebugReg (Operands.getReg modRM) | Sreg -> OperandParsers.parseSegReg (Operands.getReg modRM) | Far sz -> // XXX let effAddrSz = ParsingHelper.GetEffAddrSize phlp From c7602cabc2373d9427e8f611d5c85aab09536c48 Mon Sep 17 00:00:00 2001 From: Seung Il Jung Date: Thu, 9 Jul 2026 15:07:07 +0900 Subject: [PATCH 26/26] [Intel] Add RegAddr operand parsing --- src/FrontEnd/Intel.Tests/ParserTests.fs | 24 ++++ src/FrontEnd/Intel/Intel.fs | 154 ++++++++++++------------ src/FrontEnd/Intel/Parser.fs | 9 ++ 3 files changed, 110 insertions(+), 77 deletions(-) diff --git a/src/FrontEnd/Intel.Tests/ParserTests.fs b/src/FrontEnd/Intel.Tests/ParserTests.fs index a5bf085ec..440131a79 100644 --- a/src/FrontEnd/Intel.Tests/ParserTests.fs +++ b/src/FrontEnd/Intel.Tests/ParserTests.fs @@ -1926,6 +1926,30 @@ type ParserTests() = ++ VCVTPS2PH ** [ O.Reg R.YMM2; O.Reg R.ZMM1; O.Imm(0L, 8) ] ||> testX64NoPrefixNoSeg + [] + member _.``Address-size-dependent register operand (1)``() = + "f30faef0" + ++ UMONITOR ** [ O.Reg R.RAX ] + ||> testX64NoPrefixNoSeg + + [] + member _.``Address-size-dependent register operand (2)``() = + "f20f38f808" + ++ ENQCMD ** [ O.Reg R.RCX; O.Mem(R.RAX, 512) ] + ||> testX64NoPrefixNoSeg + + [] + member _.``Address-size-dependent register operand (3)``() = + "f30f38f81a" + ++ ENQCMDS ** [ O.Reg R.RBX; O.Mem(R.RDX, 512) ] + ||> testX64NoPrefixNoSeg + + [] + member _.``Address-size-dependent register operand (4)``() = + "660f38f811" + ++ MOVDIR64B ** [ O.Reg R.RDX; O.Mem(R.RCX, 512) ] + ||> testX64NoPrefixNoSeg + #if !EMULATION [] member _.``Size cond ParsingFailure Test (1)``() = diff --git a/src/FrontEnd/Intel/Intel.fs b/src/FrontEnd/Intel/Intel.fs index 68c421623..978ba517f 100644 --- a/src/FrontEnd/Intel/Intel.fs +++ b/src/FrontEnd/Intel/Intel.fs @@ -9801,7 +9801,7 @@ let (norTwo: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp5 OpRegMem Operands = [| NoOpr |] OpEn = OpEn.ZO Mode64 = Mode64.Valid @@ -19331,7 +19331,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp1 OpMem Operands = [| Mem 384 |] OpEn = OpEn.A Mode64 = Mode64.Valid @@ -19342,7 +19342,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp3 OpMem Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.Valid @@ -19353,7 +19353,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem 384 |] OpEn = OpEn.A Mode64 = Mode64.Valid @@ -19364,7 +19364,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp2 OpMem Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.Valid @@ -19405,7 +19405,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19416,7 +19416,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(128, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19429,7 +19429,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 384 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19464,7 +19464,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19477,7 +19477,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19664,7 +19664,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -19675,7 +19675,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -19732,7 +19732,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.Valid @@ -19743,7 +19743,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory NP REXPrefixType = REXPrefixType.REXW VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -19758,7 +19758,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F2 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| RegAddr; Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19769,7 +19769,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| RegAddr; Mem 512 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19817,7 +19817,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(32, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -19830,7 +19830,7 @@ let (norThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.NOREX VectorLength = VectorLength.None - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(32, RegBit); Reg(32, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -27181,7 +27181,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27192,7 +27192,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRMOp0 OpMem Operands = [| Mem 512 |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27214,7 +27214,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -27229,7 +27229,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(1024, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -27240,7 +27240,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(1024, RegBit); Mem 0 |] OpEn = OpEn.RM Mode64 = Mode64.None @@ -27251,7 +27251,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 0; Reg(1024, RegBit) |] OpEn = OpEn.MR Mode64 = Mode64.None @@ -27571,7 +27571,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -27584,7 +27584,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -27601,7 +27601,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -27614,7 +27614,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -27627,7 +27627,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -27640,7 +27640,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(1024, RegBit) Reg(1024, RMBit) Reg(1024, VVVV) |] @@ -28915,7 +28915,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28926,7 +28926,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28937,7 +28937,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28948,7 +28948,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28959,7 +28959,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28970,7 +28970,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28981,7 +28981,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 128 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -28992,7 +28992,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 256 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29005,7 +29005,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29016,7 +29016,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29027,7 +29027,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(128, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29038,7 +29038,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Reg(256, RegBit); Mem 16 |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29513,7 +29513,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(256, RegBit) Reg(256, VVVV) Reg(128, RMBit) |] @@ -29528,7 +29528,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(256, RegBit); Reg(128, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29541,7 +29541,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory F3 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V256 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpRegMem Operands = [| Reg(256, RegBit); Reg(256, RMBit) |] OpEn = OpEn.RM Mode64 = Mode64.Valid @@ -29909,7 +29909,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29920,7 +29920,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29933,7 +29933,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29944,7 +29944,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29957,7 +29957,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29968,7 +29968,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29981,7 +29981,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -29992,7 +29992,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30005,7 +30005,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30016,7 +30016,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30029,7 +30029,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30040,7 +30040,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30053,7 +30053,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30064,7 +30064,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30077,7 +30077,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30088,7 +30088,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30101,7 +30101,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30112,7 +30112,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30125,7 +30125,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30136,7 +30136,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30149,7 +30149,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30160,7 +30160,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30173,7 +30173,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30184,7 +30184,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30197,7 +30197,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30208,7 +30208,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30221,7 +30221,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30232,7 +30232,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30245,7 +30245,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30256,7 +30256,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30269,7 +30269,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W0 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 32; Reg(32, RegBit); Reg(32, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None @@ -30280,7 +30280,7 @@ let (vexThree38: InstructionCore[][]) = PrefixType = Mandatory P66 REXPrefixType = REXPrefixType.W1 VectorLength = VectorLength.V128 - ModRM = ModRMType.NoModRM + ModRM = ModRMType.ModRM OpMem Operands = [| Mem 64; Reg(64, RegBit); Reg(64, VVVV) |] OpEn = OpEn.A Mode64 = Mode64.None diff --git a/src/FrontEnd/Intel/Parser.fs b/src/FrontEnd/Intel/Parser.fs index c25505447..682448fd4 100644 --- a/src/FrontEnd/Intel/Parser.fs +++ b/src/FrontEnd/Intel/Parser.fs @@ -506,6 +506,15 @@ type IntelParser(wordSz, reader) = let r = if REXPrefix.hasR phlp.REXPrefix then r + 8 else r OperandParsers.parseControlReg r | DebugReg -> OperandParsers.parseDebugReg (Operands.getReg modRM) + | RegAddr -> + let sz = ParsingHelper.GetEffAddrSize phlp + setupOprContextWithEffAddr phlp sz sz + if isOpcodeGroupExtension ic.ModRM then + let rm = Operands.getRM modRM + OperandParsers.findRegRmAndSIBBase sz phlp.REXPrefix rm |> OprReg + else + let reg = Operands.getReg modRM + OperandParsers.findRegRBits sz phlp.REXPrefix reg |> OprReg | Sreg -> OperandParsers.parseSegReg (Operands.getReg modRM) | Far sz -> // XXX let effAddrSz = ParsingHelper.GetEffAddrSize phlp